def CMDstatus(parser, args):
    "Show status of changelists.\n\n  Colors are used to tell the state of the CL unless --fast is used:\n    - Red      not sent for review or broken\n    - Blue     waiting for review\n    - Yellow   waiting for you to reply to review\n    - Green    LGTM'ed\n    - Magenta  in the commit queue\n    - Cyan     was committed, branch can be deleted\n\n  Also see 'git cl comments'.\n  "
    parser.add_option('--field', help='print only specific field (desc|id|patch|url)')
    parser.add_option('-f', '--fast', action='store_true', help='Do not retrieve review status')
    parser.add_option('-j', '--maxjobs', action='store', type=int, help='The maximum number of jobs to use when retrieving review status')
    auth.add_auth_options(parser)
    (options, args) = parser.parse_args(args)
    if args:
        parser.error(('Unsupported args: %s' % args))
    auth_config = auth.extract_auth_config_from_options(options)
    if options.field:
        cl = Changelist(auth_config=auth_config)
        if options.field.startswith('desc'):
            print(cl.GetDescription())
        elif (options.field == 'id'):
            issueid = cl.GetIssue()
            if issueid:
                print(issueid)
        elif (options.field == 'patch'):
            patchset = cl.GetPatchset()
            if patchset:
                print(patchset)
        elif (options.field == 'url'):
            url = cl.GetIssueURL()
            if url:
                print(url)
        return 0
    branches = RunGit(['for-each-ref', '--format=%(refname)', 'refs/heads'])
    if (not branches):
        print('No local branch found.')
        return 0
    changes = [Changelist(branchref=b, auth_config=auth_config) for b in branches.splitlines()]
    print('Branches associated with reviews:')
    output = get_cl_statuses(changes, fine_grained=(not options.fast), max_processes=options.maxjobs)
    branch_statuses = {}
    alignment = max(5, max((len(ShortBranchName(c.GetBranch())) for c in changes)))
    for cl in sorted(changes, key=(lambda c: c.GetBranch())):
        branch = cl.GetBranch()
        while (branch not in branch_statuses):
            (c, status) = output.next()
            branch_statuses[c.GetBranch()] = status
        status = branch_statuses.pop(branch)
        url = cl.GetIssueURL()
        if (url and ((not status) or (status == 'error'))):
            url += ' (broken)'
        color = color_for_status(status)
        reset = Fore.RESET
        if (not setup_color.IS_TTY):
            color = ''
            reset = ''
        status_str = (('(%s)' % status) if status else '')
        print(('  %*s : %s%s %s%s' % (alignment, ShortBranchName(branch), color, url, status_str, reset)))
    cl = Changelist(auth_config=auth_config)
    print()
    print('Current branch:')
    print(cl.GetBranch())
    if (not cl.GetIssue()):
        print('No issue assigned.')
        return 0
    print(('Issue number: %s (%s)' % (cl.GetIssue(), cl.GetIssueURL())))
    if (not options.fast):
        print('Issue description:')
        print(cl.GetDescription(pretty=True))
    return 0
Show status of changelists.

Colors are used to tell the state of the CL unless --fast is used:
  - Red      not sent for review or broken
  - Blue     waiting for review
  - Yellow   waiting for you to reply to review
  - Green    LGTM'ed
  - Magenta  in the commit queue
  - Cyan     was committed, branch can be deleted

Also see 'git cl comments'.
def CMDstatus(parser, args):
    "Show status of changelists.\n\n  Colors are used to tell the state of the CL unless --fast is used:\n    - Red      not sent for review or broken\n    - Blue     waiting for review\n    - Yellow   waiting for you to reply to review\n    - Green    LGTM'ed\n    - Magenta  in the commit queue\n    - Cyan     was committed, branch can be deleted\n\n  Also see 'git cl comments'.\n  "
    parser.add_option('--field', help='print only specific field (desc|id|patch|url)')
    parser.add_option('-f', '--fast', action='store_true', help='Do not retrieve review status')
    parser.add_option('-j', '--maxjobs', action='store', type=int, help='The maximum number of jobs to use when retrieving review status')
    auth.add_auth_options(parser)
    (options, args) = parser.parse_args(args)
    if args:
        parser.error(('Unsupported args: %s' % args))
    auth_config = auth.extract_auth_config_from_options(options)
    if options.field:
        cl = Changelist(auth_config=auth_config)
        if options.field.startswith('desc'):
            print(cl.GetDescription())
        elif (options.field == 'id'):
            issueid = cl.GetIssue()
            if issueid:
                print(issueid)
        elif (options.field == 'patch'):
            patchset = cl.GetPatchset()
            if patchset:
                print(patchset)
        elif (options.field == 'url'):
            url = cl.GetIssueURL()
            if url:
                print(url)
        return 0
    branches = RunGit(['for-each-ref', '--format=%(refname)', 'refs/heads'])
    if (not branches):
        print('No local branch found.')
        return 0
    changes = [Changelist(branchref=b, auth_config=auth_config) for b in branches.splitlines()]
    print('Branches associated with reviews:')
    output = get_cl_statuses(changes, fine_grained=(not options.fast), max_processes=options.maxjobs)
    branch_statuses = {}
    alignment = max(5, max((len(ShortBranchName(c.GetBranch())) for c in changes)))
    for cl in sorted(changes, key=(lambda c: c.GetBranch())):
        branch = cl.GetBranch()
        while (branch not in branch_statuses):
            (c, status) = output.next()
            branch_statuses[c.GetBranch()] = status
        status = branch_statuses.pop(branch)
        url = cl.GetIssueURL()
        if (url and ((not status) or (status == 'error'))):
            url += ' (broken)'
        color = color_for_status(status)
        reset = Fore.RESET
        if (not setup_color.IS_TTY):
            color = 
            reset = 
        status_str = (('(%s)' % status) if status else )
        print(('  %*s : %s%s %s%s' % (alignment, ShortBranchName(branch), color, url, status_str, reset)))
    cl = Changelist(auth_config=auth_config)
    print()
    print('Current branch:')
    print(cl.GetBranch())
    if (not cl.GetIssue()):
        print('No issue assigned.')
        return 0
    print(('Issue number: %s (%s)' % (cl.GetIssue(), cl.GetIssueURL())))
    if (not options.fast):
        print('Issue description:')
        print(cl.GetDescription(pretty=True))
    return 0