<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def list_entitlements(ctx, opts, owner_repo, page, page_size, show_tokens):
 """ List entitlements for a repository. - OWNER/REPO: Specify the OWNER namespace (i.e. user or org), and the REPO name where you want to list entitlements for. All separated by a slash. Example: 'your-org/your-repo' Full CLI example: $ cloudsmith ents list your-org/your-repo """

    owner, repo = owner_repo

    # Use stderr for messages if the output is something else (e.g.  # JSON)
    use_stderr = opts.output != "pretty"

    click.echo(
        "Getting list of entitlements for the %(repository)s "
        "repository ... " % {"repository": click.style(repo, bold=True)},
        nl=False,
        err=use_stderr,
    )

    context_msg = "Failed to get list of entitlements!"
    with handle_api_exceptions(ctx, opts=opts, context_msg=context_msg):
        with maybe_spinner(opts):
            entitlements_, page_info = api.list_entitlements(
                owner=owner,
                repo=repo,
                page=page,
                page_size=page_size,
                show_tokens=show_tokens,
            )

    click.secho("OK", fg="green", err=use_stderr)

    print_entitlements(opts=opts, data=entitlements_, page_info=page_info)