(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:WIKI_TEST_DIR)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: 
                  (CommandList
                    children: [
                      (AndOr
                        children: [
                          (C {(cd)} 
                            {
                              (DQ 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {(dirname)} {(DQ ($ VSub_Number "$0"))})]
                                    )
                                  left_token: <Left_CommandSub "$(">
                                  spids: [25 31]
                                )
                              )
                            }
                          )
                          (C {(pwd)})
                        ]
                        op_id: Op_DAmp
                      )
                    ]
                  )
                left_token: <Left_CommandSub "$(">
                spids: [21 37]
              )
            }
          spids: [20]
        )
      ]
      spids: [20]
    )
    (If
      arms: [
        (if_arm
          cond: [(C {(test)} {(-z)} {(DQ ($ VSub_Name "$WIKI_TEST_DIR"))})]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:WIKI_TEST_DIR) op:Equal rhs:{(.)} spids:[53])]
              spids: [53]
            )
          ]
          spids: [-1 50]
        )
      ]
      spids: [-1 56]
    )
    (C {(.)} {(DQ ($ VSub_Name "$WIKI_TEST_DIR")) (/test-gitmw-lib.sh)})
    (FuncDef
      name: usage
      body: 
        (BraceGroup
          children: [
            (C {(echo)} {(DQ ("usage: "))})
            (C {(echo)} {(DQ ("\t./install-wiki.sh <install | delete | --help>"))})
            (C {(echo)} {(DQ ("\t\tinstall | -i :\tInstall a wiki on your computer."))})
            (C {(echo)} {(DQ ("\t\tdelete | -d : Delete the wiki and all its pages and "))})
            (C {(echo)} {(DQ ("\t\t\tcontent."))})
            (C {(echo)} {(DQ ("\t\tstart  | -s : Start the previously configured lighttpd daemon"))})
            (C {(echo)} {(DQ ("\t\tstop        : Stop lighttpd daemon."))})
          ]
          spids: [71]
        )
      spids: [66 70]
    )
    (Case
      to_match: {(DQ ($ VSub_Number "$1"))}
      arms: [
        (case_arm
          pat_list: [{(DQ (install))} {(DQ (-i))}]
          action: [(C {(wiki_install)}) (C {(exit)} {(0)})]
          spids: [139 147 158 -1]
        )
        (case_arm
          pat_list: [{(DQ (delete))} {(DQ (-d))}]
          action: [(C {(wiki_delete)}) (C {(exit)} {(0)})]
          spids: [162 170 181 -1]
        )
        (case_arm
          pat_list: [{(DQ (start))} {(DQ (-s))}]
          action: [(C {(start_lighttpd)}) (C {(exit)})]
          spids: [185 193 202 -1]
        )
        (case_arm
          pat_list: [{(DQ (stop))}]
          action: [(C {(stop_lighttpd)}) (C {(exit)})]
          spids: [206 208 217 -1]
        )
        (case_arm
          pat_list: [{(DQ (--help))} {(DQ (-h))}]
          action: [(C {(usage)}) (C {(exit)} {(0)})]
          spids: [221 229 240 -1]
        )
        (case_arm
          pat_list: [{(Lit_Other "*")}]
          action: [
            (C {(echo)} {(DQ ("Invalid argument: ") ($ VSub_Number "$1"))})
            (C {(usage)})
            (C {(exit)} {(1)})
          ]
          spids: [243 244 263 -1]
        )
      ]
      spids: [129 135 265]
    )
  ]
)