(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:PATH)
          op: assign_op.Equal
          rhs: 
            {<'/sbin'> <Id.Lit_Colon ':'> <'/bin'> <Id.Lit_Colon ':'> <'/usr/sbin'> <Id.Lit_Colon ':'> 
              <'/usr/bin'>
            }
          spids: [62]
        )
      ]
    )
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (C {<test>} {<-f>} {<'/usr/sbin/pppconfig'>})
        (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>})
      ]
    )
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (command.Simple
          words: [{<mkdir>} {<'/var/run/pppconfig'>}]
          redirects: [
            (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<'/dev/null'>})
            (redir op:<Id.Redir_GreatAnd '2>&'> loc:(redir_loc.Fd fd:2) arg:{<1>})
          ]
          do_fork: T
        )
        (C {<true>})
      ]
    )
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (C {<test>} {<-f>} {<'/etc/ppp/ip-down.d/0dns-down'>})
        (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>})
      ]
    )
    (command.Case
      to_match: {(DQ ($ Id.VSub_Number '$1'))}
      arms: [
        (case_arm
          pat_list: [{<start>}]
          action: [
            (C {<'/bin/echo'>} {<-n>} {(DQ <'Running 0dns-down to make sure resolv.conf is ok...'>)})
            (command.AndOr
              ops: [Id.Op_DAmp]
              children: [
                (C {<'/etc/ppp/ip-down.d/0dns-down'>} {(DQ <0dns-clean>)})
                (C {<'/bin/echo'>} {(DQ <done.>)})
              ]
            )
          ]
          spids: [120 121 148 -1]
        )
        (case_arm pat_list:[{<stop>} {<restart>} {<force-reload>}] spids:[151 156 159 -1])
        (case_arm pat_list:[{<Id.Lit_Star '*'>}] spids:[162 163 166 -1])
      ]
    )
    (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>})
  ]
)