(command.CommandList
  children: [
    (command.ShAssignment
      left: <Id.Lit_VarLike 'megacli='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'megacli='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'megacli='> name:megacli)
          op: assign_op.Equal
          rhs: {<'/usr/sbin/MegaCli'>}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'linuxdir='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'linuxdir='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'linuxdir='> name:linuxdir)
          op: assign_op.Equal
          rhs: {<'/compat/linux'>}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'osrelease='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'osrelease='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'osrelease='> name:osrelease)
          op: assign_op.Equal
          rhs: {<2.6.12>}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'devfsmount='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'devfsmount='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'devfsmount='> name:devfsmount)
          op: assign_op.Equal
          rhs: 
            {
              (CommandSub
                left_token: <Id.Left_Backtick '`'>
                child: 
                  (command.Pipeline
                    children: [
                      (command.Simple
                        blame_tok: <mount>
                        more_env: []
                        words: [{<mount>}]
                        redirects: []
                        do_fork: T
                      )
                      (command.Simple
                        blame_tok: <grep>
                        more_env: []
                        words: [{<grep>} {($ Id.VSub_DollarName linuxdir) <'/dev'>}]
                        redirects: []
                        do_fork: T
                      )
                      (command.Simple
                        blame_tok: <awk>
                        more_env: []
                        words: [{<awk>} {(SQ <'{print $3}'>)}]
                        redirects: []
                        do_fork: T
                      )
                    ]
                    ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                  )
                right: <Id.Backtick_Right '`'>
              )
            }
        )
      ]
      redirects: []
    )
    (command.If
      if_kw: <Id.KW_If if>
      arms: [
        (IfArm
          keyword: <Id.KW_If if>
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: 
                    (command.Simple
                      blame_tok: <Id.Lit_LBracket '['>
                      more_env: []
                      words: [
                        {<Id.Lit_LBracket '['>}
                        {(DQ <X> ($ Id.VSub_DollarName devfsmount))}
                        {<Id.Lit_Equals '='>}
                        {(DQ <X>)}
                        {<Id.Lit_RBracket ']'>}
                      ]
                      redirects: []
                      do_fork: T
                    )
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          then_kw: <Id.KW_Then then>
          action: [
            (command.Simple
              blame_tok: <mount>
              more_env: []
              words: [{<mount>} {<-t>} {<devfs>} {<devfs>} {($ Id.VSub_DollarName linuxdir) <'/dev'>}]
              redirects: []
              do_fork: T
            )
          ]
          spids: [63 81]
        )
      ]
      else_action: []
      fi_kw: <Id.KW_Fi fi>
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'procfsmount='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'procfsmount='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'procfsmount='> name:procfsmount)
          op: assign_op.Equal
          rhs: 
            {
              (CommandSub
                left_token: <Id.Left_Backtick '`'>
                child: 
                  (command.Pipeline
                    children: [
                      (command.Simple
                        blame_tok: <mount>
                        more_env: []
                        words: [{<mount>}]
                        redirects: []
                        do_fork: T
                      )
                      (command.Simple
                        blame_tok: <grep>
                        more_env: []
                        words: [{<grep>} {($ Id.VSub_DollarName linuxdir) <'/proc'>}]
                        redirects: []
                        do_fork: T
                      )
                      (command.Simple
                        blame_tok: <awk>
                        more_env: []
                        words: [{<awk>} {(SQ <'{print $3}'>)}]
                        redirects: []
                        do_fork: T
                      )
                    ]
                    ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                  )
                right: <Id.Backtick_Right '`'>
              )
            }
        )
      ]
      redirects: []
    )
    (command.If
      if_kw: <Id.KW_If if>
      arms: [
        (IfArm
          keyword: <Id.KW_If if>
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: 
                    (command.Simple
                      blame_tok: <Id.Lit_LBracket '['>
                      more_env: []
                      words: [
                        {<Id.Lit_LBracket '['>}
                        {(DQ <X> ($ Id.VSub_DollarName procfsmount))}
                        {<Id.Lit_Equals '='>}
                        {(DQ <X>)}
                        {<Id.Lit_RBracket ']'>}
                      ]
                      redirects: []
                      do_fork: T
                    )
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          then_kw: <Id.KW_Then then>
          action: [
            (command.Simple
              blame_tok: <mount>
              more_env: []
              words: [
                {<mount>}
                {<-t>}
                {<linprocfs>}
                {<linprocfs>}
                {($ Id.VSub_DollarName linuxdir) <'/proc'>}
              ]
              redirects: []
              do_fork: T
            )
          ]
          spids: [119 137]
        )
      ]
      else_action: []
      fi_kw: <Id.KW_Fi fi>
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'sysfsmount='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'sysfsmount='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'sysfsmount='> name:sysfsmount)
          op: assign_op.Equal
          rhs: 
            {
              (CommandSub
                left_token: <Id.Left_Backtick '`'>
                child: 
                  (command.Pipeline
                    children: [
                      (command.Simple
                        blame_tok: <mount>
                        more_env: []
                        words: [{<mount>}]
                        redirects: []
                        do_fork: T
                      )
                      (command.Simple
                        blame_tok: <grep>
                        more_env: []
                        words: [{<grep>} {($ Id.VSub_DollarName linuxdir) <'/sys'>}]
                        redirects: []
                        do_fork: T
                      )
                      (command.Simple
                        blame_tok: <awk>
                        more_env: []
                        words: [{<awk>} {(SQ <'{print $3}'>)}]
                        redirects: []
                        do_fork: T
                      )
                    ]
                    ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                  )
                right: <Id.Backtick_Right '`'>
              )
            }
        )
      ]
      redirects: []
    )
    (command.If
      if_kw: <Id.KW_If if>
      arms: [
        (IfArm
          keyword: <Id.KW_If if>
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: 
                    (command.Simple
                      blame_tok: <Id.Lit_LBracket '['>
                      more_env: []
                      words: [
                        {<Id.Lit_LBracket '['>}
                        {(DQ <X> ($ Id.VSub_DollarName sysfsmount))}
                        {<Id.Lit_Equals '='>}
                        {(DQ <X>)}
                        {<Id.Lit_RBracket ']'>}
                      ]
                      redirects: []
                      do_fork: T
                    )
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          then_kw: <Id.KW_Then then>
          action: [
            (command.Simple
              blame_tok: <mount>
              more_env: []
              words: [
                {<mount>}
                {<-t>}
                {<linsysfs>}
                {<linsysfs>}
                {($ Id.VSub_DollarName linuxdir) <'/sys'>}
              ]
              redirects: []
              do_fork: T
            )
          ]
          spids: [175 193]
        )
      ]
      else_action: []
      fi_kw: <Id.KW_Fi fi>
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'linuxver='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'linuxver='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'linuxver='> name:linuxver)
          op: assign_op.Equal
          rhs: 
            {
              (CommandSub
                left_token: <Id.Left_Backtick '`'>
                child: 
                  (command.Pipeline
                    children: [
                      (command.Simple
                        blame_tok: <sysctl>
                        more_env: []
                        words: [{<sysctl>} {<-n>} {<compat.linux.osrelease>}]
                        redirects: []
                        do_fork: T
                      )
                      (command.Simple
                        blame_tok: <cut>
                        more_env: []
                        words: [{<cut>} {<-d>} {<.>} {<-f>} {<1> <Id.Lit_Comma ','> <2>}]
                        redirects: []
                        do_fork: T
                      )
                    ]
                    ops: [<Id.Op_Pipe _>]
                  )
                right: <Id.Backtick_Right '`'>
              )
            }
        )
      ]
      redirects: []
    )
    (command.If
      if_kw: <Id.KW_If if>
      arms: [
        (IfArm
          keyword: <Id.KW_If if>
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: 
                    (command.Simple
                      blame_tok: <Id.Lit_LBracket '['>
                      more_env: []
                      words: [
                        {<Id.Lit_LBracket '['>}
                        {(DQ <X> ($ Id.VSub_DollarName linuxver))}
                        {<Id.KW_Bang '!'> <Id.Lit_Equals '='>}
                        {(DQ <X2.6>)}
                        {<Id.Lit_RBracket ']'>}
                      ]
                      redirects: []
                      do_fork: T
                    )
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          then_kw: <Id.KW_Then then>
          action: [
            (command.Simple
              blame_tok: <sysctl>
              more_env: []
              words: [
                {<sysctl>}
                {<compat.linux.osrelease> <Id.Lit_Equals '='> ($ Id.VSub_DollarName osrelease)}
              ]
              redirects: []
              do_fork: T
            )
          ]
          spids: [235 254]
        )
      ]
      else_action: []
      fi_kw: <Id.KW_Fi fi>
      redirects: []
    )
    (command.Simple
      blame_tok: <chroot>
      more_env: []
      words: [
        {<chroot>}
        {($ Id.VSub_DollarName linuxdir)}
        {($ Id.VSub_DollarName megacli)}
        {($ Id.VSub_At '@')}
      ]
      redirects: []
      do_fork: T
    )
  ]
)