(CommandList
  children: [
    (AndOr
      children: [
        (FuncDef
          name: _larch
          body: 
            (BraceGroup
              children: [
                (Assignment
                  keyword: Assign_Local
                  pairs: [
                    (assign_pair lhs:(LhsName name:cur) op:Equal spids:[16])
                    (assign_pair lhs:(LhsName name:prev) op:Equal spids:[18])
                    (assign_pair lhs:(LhsName name:words) op:Equal spids:[20])
                    (assign_pair lhs:(LhsName name:cword) op:Equal spids:[22])
                  ]
                  spids: [14]
                )
                (AndOr
                  children: [(C {(_init_completion)}) (ControlFlow token:<ControlFlow_Return return>)]
                  op_id: Op_DPipe
                )
                (If
                  arms: [
                    (if_arm
                      cond: [
                        (Sentence
                          child: 
                            (DBracket
                              expr: 
                                (LogicalOr
                                  left: 
                                    (BoolBinary
                                      op_id: BoolBinary_eq
                                      left: {($ VSub_Name '$cword')}
                                      right: {(1)}
                                    )
                                  right: 
                                    (BoolBinary
                                      op_id: BoolBinary_GlobDEqual
                                      left: {(DQ ($ VSub_Name '$prev'))}
                                      right: {(-) (Lit_Other '*')}
                                    )
                                )
                            )
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:COMPREPLY)
                              op: Equal
                              rhs: 
                                {
                                  (ArrayLiteralPart
                                    words: [
                                      {
                                        (CommandSubPart
                                          command_list: 
                                            (CommandList
                                              children: [
                                                (C {(compgen)} {(-W)} 
                                                  {
                                                    (SQ <' \\\n'> 
                                                      <
'            my-id my-default-archive register-archive whereis-archive archives \\\n'
                                                      > <'            init-tree tree-root tree-version set-tree-version inventory \\\n'> 
                                                      <
'            tagging-method tree-lint missing-tags add delete \\\n'
                                                      > <'            move explicit-default set-manifest manifest check-manifest mkpatch \\\n'> 
                                                      <
'            dopatch patch-report empty-patch make-archive make-category \\\n'
                                                      > <'            make-branch make-version categories branches versions revisions \\\n'> 
                                                      <
'            cat-archive-log archive-cache-revision archive-cached-revisions \\\n'
                                                      > <'            archive-uncache-revision category-readme branch-readme \\\n'> 
                                                      <
'            version-readme make-log logs add-log log-ls cat-log \\\n'
                                                      > <'            log-header-field changelog log-for-merge merge-points \\\n'> 
                                                      <
'            new-on-branch import commit get get-patch lock-branch \\\n'
                                                      > <'            lock-revision push-mirror build-config update-config replay-config \\\n'> 
                                                      <
'            record-config show-config config-history update replay delta-patch \\\n'
                                                      > <'            star-merge tag prepare-branch finish-branch join-branch \\\n'> 
                                                      <
'            whats-missing what-changed file-diffs pristines lock-pristine \\\n'
                                                      > <'            my-revision-library library-find library-add library-remove \\\n'> 
                                                      <
'            library-archives library-categories library-branches \\\n'
                                                      > <'            library-versions library-revisions library-log library-file \\\n'> 
                                                      <
'            touched-files-prereqs patch-set-web update-distributions \\\n'
                                                      > <'            distribution-name notify my-notifier mail-new-categories \\\n'> 
                                                      <
'            mail-new-branches mail-new-versions mail-new-revisions \\\n'
                                                      > <'            notify-library notify-browser push-new-revisions sendmail-mailx'>
                                                    )
                                                  } {(DQ ($ VSub_Name '$cur'))}
                                                )
                                              ]
                                            )
                                          left_token: <Left_CommandSub '$('>
                                          spids: [63 101]
                                        )
                                      }
                                    ]
                                  )
                                }
                              spids: [60]
                            )
                          ]
                          spids: [60]
                        )
                      ]
                      spids: [16777215 57]
                    )
                  ]
                  spids: [16777215 106]
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})
              ]
              spids: [11]
            )
          spids: [7 10]
        )
        (C {(complete)} {(-F)} {(_larch)} {(-o)} {(default)} {(larch)})
      ]
      op_id: Op_DAmp
    )
  ]
)