(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:PATH)
          op: Equal
          rhs: {(/sbin) (Lit_Other ':') (/bin)}
          spids: [46]
        )
      ]
      spids: [46]
    )
    (C {(.)} {(/lib/init/vars.sh)})
    (C {(.)} {(/lib/lsb/init-functions)})
    (FuncDef
      name: do_start
      body: 
        (BraceGroup
          children: [
            (AndOr
              children: [
                (C {(Lit_Other '[')} {(-f)} {(/etc/hostname)} {(Lit_Other ']')})
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:HOSTNAME)
                      op: Equal
                      rhs: 
                        {
                          (DQ 
                            (CommandSubPart
                              command_list: (CommandList children:[(C {(cat)} {(/etc/hostname)})])
                              left_token: <Left_CommandSub '$('>
                              spids: [81 85]
                            )
                          )
                        }
                      spids: [79]
                    )
                  ]
                  spids: [79]
                )
              ]
              op_id: Op_DAmp
            )
            (AndOr
              children: [
                (C {(Lit_Other '[')} {(-z)} {(DQ ($ VSub_Name '$HOSTNAME'))} {(Lit_Other ']')})
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:HOSTNAME)
                      op: Equal
                      rhs: 
                        {
                          (DQ 
                            (CommandSubPart
                              command_list: (CommandList children:[(C {(hostname)})])
                              left_token: <Left_CommandSub '$('>
                              spids: [108 110]
                            )
                          )
                        }
                      spids: [106]
                    )
                  ]
                  spids: [106]
                )
              ]
              op_id: Op_DAmp
            )
            (AndOr
              children: [
                (C {(Lit_Other '[')} {(-z)} {(DQ ($ VSub_Name '$HOSTNAME'))} {(Lit_Other ']')})
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:HOSTNAME)
                      op: Equal
                      rhs: {(localhost)}
                      spids: [131]
                    )
                  ]
                  spids: [131]
                )
              ]
              op_id: Op_DAmp
            )
            (AndOr
              children: [
                (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$VERBOSE'))} {(KW_Bang '!') (Lit_Other '=')} 
                  {(no)} {(Lit_Other ']')}
                )
                (C {(log_action_begin_msg)} 
                  {(DQ ("Setting hostname to '") ($ VSub_Name '$HOSTNAME') ("'"))}
                )
              ]
              op_id: Op_DAmp
            )
            (C {(hostname)} {(DQ ($ VSub_Name '$HOSTNAME'))})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:ES)
                  op: Equal
                  rhs: {($ VSub_QMark '$?')}
                  spids: [167]
                )
              ]
              spids: [167]
            )
            (AndOr
              children: [
                (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$VERBOSE'))} {(KW_Bang '!') (Lit_Other '=')} 
                  {(no)} {(Lit_Other ']')}
                )
                (C {(log_action_end_msg)} {($ VSub_Name '$ES')})
              ]
              op_id: Op_DAmp
            )
            (C {(exit)} {($ VSub_Name '$ES')})
          ]
          spids: [66]
        )
      spids: [61 65]
    )
    (FuncDef
      name: do_status
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:HOSTNAME)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: (CommandList children:[(C {(hostname)})])
                        left_token: <Left_CommandSub '$('>
                        spids: [207 209]
                      )
                    }
                  spids: [206]
                )
              ]
              spids: [206]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$HOSTNAME'))} {(Lit_Other ']')})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})]
                  spids: [16777215 224]
                )
              ]
              else_action: [(ControlFlow token:<ControlFlow_Return return> arg_word:{(4)})]
              spids: [232 240]
            )
          ]
          spids: [203]
        )
      spids: [198 202]
    )
    (Case
      to_match: {(DQ ($ VSub_Number '$1'))}
      arms: [
        (case_arm
          pat_list: [{(start)} {(DQ )}]
          action: [(C {(do_start)})]
          spids: [254 258 264 16777215]
        )
        (case_arm
          pat_list: [{(restart)} {(reload)} {(force-reload)}]
          action: [
            (SimpleCommand
              words: [{(echo)} {(DQ ("Error: argument '") ($ VSub_Number '$1') ("' not supported"))}]
              redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(2)} spids:[283])]
            )
            (C {(exit)} {(3)})
          ]
          spids: [267 272 292 16777215]
        )
        (case_arm pat_list:[{(stop)}] spids:[295 296 303 16777215])
        (case_arm
          pat_list: [{(status)}]
          action: [(C {(do_status)}) (C {(exit)} {($ VSub_QMark '$?')})]
          spids: [306 307 318 16777215]
        )
        (case_arm
          pat_list: [{(Lit_Other '*')}]
          action: [
            (SimpleCommand
              words: [{(echo)} {(DQ ('Usage: hostname.sh [start|stop]'))}]
              redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(2)} spids:[331])]
            )
            (C {(exit)} {(3)})
          ]
          spids: [321 322 340 16777215]
        )
      ]
      spids: [245 251 342]
    )
    (C {(Lit_Other ':')})
  ]
)