(command.CommandList
  children: [
    (C {<echo>})
    (command.ForEach
      iter_name: dtop
      iter_words: [{<switch2>} {<GTK-Chtheme>} {<icon_switcher>} {<Desktop-drive-icons>}]
      do_arg_iter: F
      body: 
        (command.DoGroup
          children: [
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {<Id.Lit_LBracket '['>} {<-f>} 
                  {(DQ <'usr/share/applications/'> (${ Id.VSub_Name dtop) <.desktop>)} {<Id.Lit_RBracket ']'>}
                )
                (command.ControlFlow token:<Id.ControlFlow_Continue continue>)
              ]
            )
            (command.If
              arms: [
                (if_arm
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (C {<grep>} {<-q>} {(DQ <'^NoDisplay'>)} 
                              {<'usr/share/applications/'> (${ Id.VSub_Name dtop) <.desktop>}
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  action: [
                    (C {<sed>} {<-i>} {(SQ <'s%NoDisplay=.*%NoDisplay=true%'>)} 
                      {<'usr/share/applications/'> (${ Id.VSub_Name dtop) <.desktop>}
                    )
                  ]
                  spids: [46 63]
                )
              ]
              else_action: [
                (command.Simple
                  words: [{<echo>} {(SQ <'NoDisplay=true'>)}]
                  redirects: [
                    (redir
                      op: <Id.Redir_DGreat '>>'>
                      loc: (redir_loc.Fd fd:1)
                      arg: {<'usr/share/applications/'> (${ Id.VSub_Name dtop) <.desktop>}
                    )
                  ]
                  do_fork: T
                )
              ]
            )
          ]
        )
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: 
                    (C {<Id.Lit_LBracket '['>} {(DQ ($ Id.VSub_DollarName '$PTHEME'))} 
                      {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ )} {<Id.Lit_RBracket ']'>}
                    )
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:theme)
                  op: assign_op.Equal
                  rhs: {(DQ ($ Id.VSub_DollarName '$PTHEME'))}
                  spids: [141]
                )
              ]
            )
          ]
          spids: [120 138]
        )
      ]
      else_action: [
        (C {<echo>})
        (command.AndOr
          ops: [Id.Op_DAmp]
          children: [
            (C {<Id.Lit_LBracket '['>} {<-f>} {<'/tmp/ptheme_choose'>} {<Id.Lit_RBracket ']'>})
            (C {<rm>} {<'/tmp/ptheme_choose'>})
          ]
        )
        (C {<echo>} {(DQ <'You can choose from the following global themes'>)})
        (C {<echo>})
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:num)
              op: assign_op.Equal
              rhs: {<1>}
              spids: [177]
            )
          ]
        )
        (command.WhileUntil
          keyword: <Id.KW_While while>
          cond: 
            (condition.Shell
              commands: [(command.Sentence child:(C {<read>} {<i>}) terminator:<Id.Op_Semi _>)]
            )
          body: 
            (command.DoGroup
              children: [
                (C {<echo>} {(DQ ($ Id.VSub_DollarName '$num') <' '> ($ Id.VSub_DollarName '$i'))})
                (command.Simple
                  words: [
                    {<echo>}
                    {(DQ ($ Id.VSub_DollarName '$num') <' '> ($ Id.VSub_DollarName '$i'))}
                  ]
                  redirects: [
                    (redir
                      op: <Id.Redir_DGreat '>>'>
                      loc: (redir_loc.Fd fd:1)
                      arg: {<'/tmp/ptheme_choose'>}
                    )
                  ]
                  do_fork: T
                )
                (command.ShAssignment
                  pairs: [
                    (assign_pair
                      lhs: (sh_lhs_expr.Name name:num)
                      op: assign_op.Equal
                      rhs: 
                        {
                          (word_part.ArithSub
                            anode: 
                              (arith_expr.Binary
                                op_id: Id.Arith_Plus
                                left: {($ Id.VSub_DollarName '$num')}
                                right: {<Id.Lit_Digits 1>}
                              )
                          )
                        }
                      spids: [213]
                    )
                  ]
                )
              ]
            )
          redirects: [
            (redir
              op: <Id.Redir_TLess '<<<'>
              loc: (redir_loc.Fd fd:0)
              arg: 
                {
                  (DQ 
                    (command_sub
                      left_token: <Id.Left_Backtick '`'>
                      child: (C {<ls>} {<'usr/share/ptheme/globals'>})
                    )
                  )
                }
            )
          ]
        )
        (C {<echo>})
        (C {<echo>} {(DQ <'Type the number of the theme you want'>)})
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:xnum)
              op: assign_op.Equal
              rhs: {<1>}
              spids: [250]
            )
          ]
        )
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:theme)
              op: assign_op.Equal
              rhs: {(DQ )}
              spids: [254]
            )
          ]
        )
        (command.WhileUntil
          keyword: <Id.KW_While while>
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: 
                    (C {<Id.Lit_LBracket '['>} {($ Id.VSub_DollarName '$xnum')} {<-lt>} {<4>} 
                      {<Id.Lit_RBracket ']'>}
                    )
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          body: 
            (command.DoGroup
              children: [
                (C {<read>} {<ptheme_num>})
                (command.AndOr
                  ops: [Id.Op_DAmp Id.Op_DAmp]
                  children: [
                    (command.Pipeline
                      children: [
                        (C {<echo>} {(DQ ($ Id.VSub_DollarName '$ptheme_num'))})
                        (C {<grep>} {<-qv>} {(SQ <'[0-9]'>)})
                      ]
                      negated: F
                    )
                    (C {<echo>} {(DQ <'A number is needed'>)})
                    (command.ControlFlow token:<Id.ControlFlow_Continue continue>)
                  ]
                )
                (command.If
                  arms: [
                    (if_arm
                      cond: 
                        (condition.Shell
                          commands: [
                            (command.Sentence
                              child: 
                                (C {<grep>} {<-q>} {(${ Id.VSub_Name ptheme_num)} 
                                  {<'/tmp/ptheme_choose'>}
                                )
                              terminator: <Id.Op_Semi _>
                            )
                          ]
                        )
                      action: [
                        (command.ShAssignment
                          pairs: [
                            (assign_pair
                              lhs: (sh_lhs_expr.Name name:theme)
                              op: assign_op.Equal
                              rhs: 
                                {
                                  (command_sub
                                    left_token: <Id.Left_Backtick '`'>
                                    child: 
                                      (command.Pipeline
                                        children: [
                                          (C {<grep>} {<-w>} {(DQ (${ Id.VSub_Name ptheme_num))} 
                                            {<'/tmp/ptheme_choose'>}
                                          )
                                          (C {<cut>} {<-d>} {(SQ <' '>)} 
                                            {<-f2> <Id.Lit_Comma ','> <3> <Id.Lit_Comma ','> <4>}
                                          )
                                        ]
                                        negated: F
                                      )
                                  )
                                }
                              spids: [323]
                            )
                          ]
                        )
                        (C {<echo>} 
                          {(DQ <'You chose '> (${ Id.VSub_Name theme) <'. Excellent choice.'>)}
                        )
                        (command.ControlFlow
                          token: <Id.ControlFlow_Break break>
                        )
                      ]
                      spids: [308 320]
                    )
                  ]
                  else_action: [
                    (command.If
                      arms: [
                        (if_arm
                          cond: 
                            (condition.Shell
                              commands: [
                                (command.Sentence
                                  child: 
                                    (C {<Id.Lit_LBracket '['>} {($ Id.VSub_DollarName '$xnum')} {<-lt>} 
                                      {<3>} {<Id.Lit_RBracket ']'>}
                                    )
                                  terminator: <Id.Op_Semi _>
                                )
                              ]
                            )
                          action: [(C {<echo>} {(DQ <'Sorry, that didn\'t work, try another number'>)})]
                          spids: [372 384]
                        )
                      ]
                      else_action: [(C {<echo>} {(DQ <'Last chance...'>)})]
                    )
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name name:xnum)
                          op: assign_op.Equal
                          rhs: 
                            {
                              (word_part.ArithSub
                                anode: 
                                  (arith_expr.Binary
                                    op_id: Id.Arith_Plus
                                    left: {($ Id.VSub_DollarName '$xnum')}
                                    right: {<Id.Lit_Digits 1>}
                                  )
                              )
                            }
                          spids: [407]
                        )
                      ]
                    )
                  ]
                )
              ]
            )
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: 
                    (C {<Id.Lit_LBracket '['>} {<Id.KW_Bang '!'>} {<-f>} 
                      {<'usr/share/ptheme/globals/'> (DQ (${ Id.VSub_Name theme))} {<Id.Lit_RBracket ']'>}
                    )
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:theme)
                  op: assign_op.Equal
                  rhs: {(DQ <'Bright Mouse'>)}
                  spids: [446]
                )
              ]
            )
            (C {<echo>} {(DQ <'Invalid theme, defaulting to '> ($ Id.VSub_DollarName '$theme'))})
          ]
          spids: [426 443]
        )
      ]
    )
    (C {<echo>} {(DQ <'Setting '> ($ Id.VSub_DollarName '$theme') <' to default'>)})
    (C {<.>} {<'usr/share/ptheme/globals/'> (DQ (${ Id.VSub_Name theme))})
    (command.AndOr
      ops: [Id.Op_DAmp]
      children: [
        (C {<Id.Lit_LBracket '['>} {<Id.KW_Bang '!'>} {<-d>} {<'root/.jwm'>} {<Id.Lit_RBracket ']'>})
        (C {<mkdir>} {<-p>} {<'root/.jwm'>})
      ]
    )
    (C {<cp>} {<-af>} {<'usr/share/jwm/themes/'> (DQ (${ Id.VSub_Name PTHEME_JWM_COLOR) <-jwmrc>)} 
      {<'root/.jwm/jwmrc-theme'>}
    )
    (C {<echo>} {(DQ <'jwm colors: '> (${ Id.VSub_Name PTHEME_JWM_COLOR))})
    (C {<cp>} {<-f>} 
      {<'usr/share/jwm/tray_templates/'> (DQ ($ Id.VSub_DollarName '$PTHEME_JWM_TRAY')) 
        <'/jwmrc-tray'> <Id.Lit_Star '*'>
      } {<'root/.jwm/'>}
    )
    (C {<rm>} {<-f>} {<'root/.jwm/jwmrc-tray'> <Id.Lit_Star '*'> <_hybrid>})
    (command.ForEach
      iter_name: I
      iter_words: [{<1>} {<2>} {<3>} {<4>}]
      do_arg_iter: F
      body: 
        (command.DoGroup
          children: [
            (command.If
              arms: [
                (if_arm
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (C {<Id.Lit_LBracket '['>} 
                              {
                                (DQ 
                                  (command_sub
                                    left_token: <Id.Left_Backtick '`'>
                                    child: 
                                      (C {<grep>} {<-F>} {(SQ <'_hybrid</Include>'>)} 
                                        {<'root/.jwm/jwmrc-tray'> ($ Id.VSub_DollarName '$I')}
                                      )
                                  )
                                )
                              } {<Id.Lit_RBracket ']'>}
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  action: [
                    (command.Pipeline
                      children: [
                        (C {<grep>} {<-vF>} {(SQ <'_hybrid</Include>'>)} 
                          {<'root/.jwm/jwmrc-tray'> ($ Id.VSub_DollarName '$I')}
                        )
                        (command.Simple
                          words: [
                            {<sed>}
                            {<-e>}
                            {(SQ <'s%autohide="\\(top\\|bottom\\|left\\|right\\)" %autohide="off"%'>)}
                            {<-e>}
                            {
                              (DQ <'s%layer='> 
                                (word_part.EscapedLiteral
                                  token: <Id.Lit_EscapedChar '\\"'>
                                ) <above> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'%layer='> 
                                (word_part.EscapedLiteral
                                  token: <Id.Lit_EscapedChar '\\"'>
                                ) <below> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'%'>
                              )
                            }
                          ]
                          redirects: [
                            (redir
                              op: <Id.Redir_Great '>'>
                              loc: (redir_loc.Fd fd:1)
                              arg: {<'root/.jwm/jwmrc-tray'> (${ Id.VSub_Name I) <_hybrid>}
                            )
                          ]
                          do_fork: T
                        )
                      ]
                      negated: F
                    )
                  ]
                  spids: [571 595]
                )
              ]
            )
          ]
        )
    )
    (command.Simple
      words: [{<echo>} {(DQ ($ Id.VSub_DollarName '$PTHEME_JWM_TRAY'))}]
      redirects: [
        (redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {<'root/.jwm/tray_active_preset'>}
        )
      ]
      do_fork: T
    )
    (C {<echo>} {(DQ <'jwm tray: '> (${ Id.VSub_Name PTHEME_JWM_TRAY))})
    (C {<cp>} {<-af>} {<'root/.jwm/jwmrc-tray'> <Id.Lit_Star '*'>} {<'root/.jwm/backup/'>})
    (C {<cp>} {<-af>} {<'root/.jwm/jwmrc-theme'>} {<'root/.jwm/backup/'>})
    (command.Case
      to_match: {($ Id.VSub_DollarName '$PTHEME_JWM_SIZE')}
      arms: [
        (case_arm
          pat_list: [{<small>}]
          action: [(C {<rm>} {<'root/.jwm/menuheights'>})]
          spids: [696 697 702 -1]
        )
        (case_arm
          pat_list: [{<normal>}]
          action: [
            (command.Simple
              words: [{<echo>} {(DQ <'MENHEIGHT=24'>)}]
              redirects: [
                (redir
                  op: <Id.Redir_Great '>'>
                  loc: (redir_loc.Fd fd:1)
                  arg: {<'root/.jwm/menuheights'>}
                )
              ]
              do_fork: T
            )
          ]
          spids: [704 705 716 -1]
        )
        (case_arm
          pat_list: [{<large>}]
          action: [
            (command.Simple
              words: [{<echo>} {(DQ <'MENHEIGHT=32'>)}]
              redirects: [
                (redir
                  op: <Id.Redir_Great '>'>
                  loc: (redir_loc.Fd fd:1)
                  arg: {<'root/.jwm/menuheights'>}
                )
              ]
              do_fork: T
            )
          ]
          spids: [718 719 730 -1]
        )
        (case_arm
          pat_list: [{<huge>}]
          action: [
            (command.Simple
              words: [{<echo>} {(DQ <'MENHEIGHT=40'>)}]
              redirects: [
                (redir
                  op: <Id.Redir_Great '>'>
                  loc: (redir_loc.Fd fd:1)
                  arg: {<'root/.jwm/menuheights'>}
                )
              ]
              do_fork: T
            )
          ]
          spids: [732 733 744 -1]
        )
        (case_arm
          pat_list: [{<Id.Lit_Star '*'>}]
          action: [
            (command.Simple
              words: [{<echo>} {(DQ <'MENHEIGHT=24'>)}]
              redirects: [
                (redir
                  op: <Id.Redir_Great '>'>
                  loc: (redir_loc.Fd fd:1)
                  arg: {<'root/.jwm/menuheights'>}
                )
              ]
              do_fork: T
            )
          ]
          spids: [746 747 758 -1]
        )
      ]
    )
    (C {<echo>} {(DQ <'jwm size: '> (${ Id.VSub_Name PTHEME_JWM_SIZE))})
    (C {<mkdir>} {<-p>} {<'root/.jwm/window_buttons'>})
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:Dir)
          op: assign_op.Equal
          rhs: {<'usr/share/jwm/themes_window_buttons/'> (${ Id.VSub_Name PTHEME_JWM_BUTTONS)}
          spids: [781]
        )
      ]
    )
    (command.ForEach
      iter_name: icon
      iter_words: [{($ Id.VSub_DollarName '$Dir') <'/'> <Id.Lit_Star '*'>}]
      do_arg_iter: F
      body: 
        (command.DoGroup
          children: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:ifile)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (command_sub
                        left_token: <Id.Left_DollarParen '$('>
                        child: (C {<basename>} {($ Id.VSub_DollarName '$icon')})
                      )
                    }
                  spids: [801]
                )
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:ext)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (braced_var_sub
                        token: <Id.VSub_Name ifile>
                        suffix_op: 
                          (suffix_op.Unary
                            tok: <Id.VOp1_DPound '##'>
                            arg_word: {<Id.Lit_Other '*'> <.>}
                          )
                      )
                    }
                  spids: [809]
                )
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:newicon)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (command_sub
                        left_token: <Id.Left_Backtick '`'>
                        child: 
                          (command.Pipeline
                            children: [
                              (C {<echo>} {($ Id.VSub_DollarName '$ifile')})
                              (C {<sed>} 
                                {(DQ <'s%'> (${ Id.VSub_Name ext) <Id.Lit_Dollar '$'> <'%png%'>)}
                              )
                            ]
                            negated: F
                          )
                      )
                    }
                  spids: [818]
                )
              ]
            )
            (command.If
              arms: [
                (if_arm
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (C {<Id.Lit_LBracket '['>} 
                              {
                                (DQ 
                                  (command_sub
                                    left_token: <Id.Left_Backtick '`'>
                                    child: (C {<which>} {<rsvg-convert>})
                                  )
                                )
                              } {<Id.Lit_RBracket ']'>}
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  action: [
                    (C {<rsvg-convert>} {<-w>} {<48>} {<-h>} {<48>} {<-o>} 
                      {<'root/.jwm/window_buttons/'> (${ Id.VSub_Name newicon)} {(${ Id.VSub_Name icon)}
                    )
                  ]
                  spids: [843 860]
                )
              ]
              else_action: [
                (C {<ln>} {<-sf>} {(${ Id.VSub_Name icon)} 
                  {<'root/.jwm/window_buttons/'> (${ Id.VSub_Name newicon)}
                )
              ]
            )
          ]
        )
    )
    (C {<echo>} {(DQ <'jwm buttons: '> (${ Id.VSub_Name PTHEME_JWM_BUTTONS))})
    (C {<sleep>} {<1>})
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<'root/.gtkrc-2.0'>})
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<_EOF>}
              here_end_span_id: 985
              stdin_parts: [
                <'# -- THEME AUTO-WRITTEN BY gtk-theme-switch2 DO NOT EDIT\n'>
                <'include '>
                <Id.Right_DoubleQuote '"'>
                <'/usr/share/themes/'>
                (${ Id.VSub_Name PTHEME_GTK)
                <'/gtk-2.0/gtkrc'>
                <Id.Right_DoubleQuote '"'>
                <'\n'>
                <'\n'>
                <'style '>
                <Id.Right_DoubleQuote '"'>
                <user-font>
                <Id.Right_DoubleQuote '"'>
                <'\n'>
                <'{\n'>
                <'  font_name='>
                <Id.Right_DoubleQuote '"'>
                <Id.Right_DoubleQuote '"'>
                <'\n'>
                <'}\n'>
                <'widget_class '>
                <Id.Right_DoubleQuote '"'>
                <'*'>
                <Id.Right_DoubleQuote '"'>
                <' style '>
                <Id.Right_DoubleQuote '"'>
                <user-font>
                <Id.Right_DoubleQuote '"'>
                <'\n'>
                <'\n'>
                <'include '>
                <Id.Right_DoubleQuote '"'>
                <'/root/.gtkrc-2.0.mine'>
                <Id.Right_DoubleQuote '"'>
                <'\n'>
                <'\n'>
                <'# -- THEME AUTO-WRITTEN BY gtk-theme-switch2 DO NOT EDIT\n'>
                <'gtk-theme-name = '>
                <Id.Right_DoubleQuote '"'>
                (${ Id.VSub_Name PTHEME_GTK)
                <Id.Right_DoubleQuote '"'>
                <'\n'>
              ]
            )
        )
      ]
      do_fork: T
    )
    (C {<echo>} {(DQ <'gtk: '> (${ Id.VSub_Name PTHEME_GTK))})
    (command.AndOr
      ops: [Id.Op_DAmp]
      children: [
        (C {<Id.Lit_LBracket '['>} {<-n>} {(DQ ($ Id.VSub_DollarName '$PTHEME_ICONS_GTK'))} 
          {<Id.Lit_RBracket ']'>}
        )
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:USE_ICON_THEME)
              op: assign_op.Equal
              rhs: 
                {
                  (DQ 
                    (command_sub
                      left_token: <Id.Left_Backtick '`'>
                      child: 
                        (C {<find>} {<'usr/share/icons'>} {<-type>} {<d>} {<-name>} 
                          {(DQ ($ Id.VSub_DollarName '$PTHEME_ICONS_GTK'))} {<-maxdepth>} {<1>}
                        )
                    )
                  )
                }
              spids: [1012]
            )
          ]
        )
      ]
    )
    (command.AndOr
      ops: [Id.Op_DAmp Id.Op_DPipe]
      children: [
        (C {<Id.Lit_LBracket '['>} {<-z>} {(DQ ($ Id.VSub_DollarName '$USE_ICON_THEME'))} 
          {<Id.Lit_RBracket ']'>}
        )
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:USE_ICON_THEME)
              op: assign_op.Equal
              rhs: {(DQ <'Puppy Standard'>)}
              spids: [1049]
            )
          ]
        )
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:USE_ICON_THEME)
              op: assign_op.Equal
              rhs: {(DQ ($ Id.VSub_DollarName '$PTHEME_ICONS_GTK'))}
              spids: [1056]
            )
          ]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: 
                    (C {<Id.Lit_LBracket '['>} {<-d>} 
                      {(DQ <'usr/share/icons/'> ($ Id.VSub_DollarName '$USE_ICON_THEME'))} {<Id.Lit_RBracket ']'>}
                    )
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [
            (command.Simple
              words: [
                {<echo>}
                {<-e>}
                {
                  (DQ <'gtk-icon-theme-name = '> 
                    (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ($ Id.VSub_DollarName '$USE_ICON_THEME') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>)
                  )
                }
              ]
              redirects: [
                (redir
                  op: <Id.Redir_DGreat '>>'>
                  loc: (redir_loc.Fd fd:1)
                  arg: {<'root/.gtkrc-2.0'>}
                )
              ]
              do_fork: T
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:ROX_THEME_FILE)
                  op: assign_op.Equal
                  rhs: {(DQ <'root/.config/rox.sourceforge.net/ROX-Filer/Options'>)}
                  spids: [1104]
                )
              ]
            )
            (C {<sed>} {<-i>} {(DQ <'s%ROX%'> ($ Id.VSub_DollarName '$USE_ICON_THEME') <'%'>)} 
              {($ Id.VSub_DollarName '$ROX_THEME_FILE')}
            )
            (C {<echo>} {(DQ <'icon theme: '> ($ Id.VSub_DollarName '$USE_ICON_THEME'))})
          ]
          spids: [1064 1077]
        )
      ]
    )
    (C {<sleep>} {<1>})
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:ext)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                (braced_var_sub
                  token: <Id.VSub_Name PTHEME_WALL>
                  suffix_op: 
                    (suffix_op.Unary
                      tok: <Id.VOp1_DPound '##'>
                      arg_word: {<Id.Lit_Other '*'> <.>}
                    )
                )
              )
            }
          spids: [1147]
        )
      ]
    )
    (C {<cp>} {<-af>} {<'usr/share/backgrounds/'> (DQ (${ Id.VSub_Name PTHEME_WALL))} 
      {<'usr/share/backgrounds/default.'> (${ Id.VSub_Name ext)}
    )
    (C {<echo>} {(DQ <'wallpaper: '> (${ Id.VSub_Name PTHEME_WALL))})
    (C {<sleep>} {<1>})
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:BACKDROP)
          op: assign_op.Equal
          rhs: 
            {
              (DQ <'  <backdrop style='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) 
                <Stretched> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'>/usr/share/backgrounds/default.'> 
                (${ Id.VSub_Name ext) <'</backdrop>'>
              )
            }
          spids: [1195]
        )
      ]
    )
    (command.Simple
      words: [{<echo>} {<-e>} {(SQ <'<?xml version="1.0"?>\\n<pinboard>'>)}]
      redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<'/tmp/newpin'>})]
      do_fork: T
    )
    (command.Simple
      words: [{<echo>} {(DQ ($ Id.VSub_DollarName '$BACKDROP'))}]
      redirects: [(redir op:<Id.Redir_DGreat '>>'> loc:(redir_loc.Fd fd:1) arg:{<'/tmp/newpin'>})]
      do_fork: T
    )
    (command.Simple
      words: [{<cat>} {<'usr/share/ptheme/rox_pinboard/'> (DQ (${ Id.VSub_Name PTHEME_ROX_PIN))}]
      redirects: [(redir op:<Id.Redir_DGreat '>>'> loc:(redir_loc.Fd fd:1) arg:{<'/tmp/newpin'>})]
      do_fork: T
    )
    (command.Simple
      words: [{<echo>} {(SQ <'</pinboard>'>)}]
      redirects: [(redir op:<Id.Redir_DGreat '>>'> loc:(redir_loc.Fd fd:1) arg:{<'/tmp/newpin'>})]
      do_fork: T
    )
    (C {<cp>} {<-a>} {<'/tmp/newpin'>} {<'root/Choices/ROX-Filer/PuppyPin'>})
    (C {<echo>} {(DQ <'rox icons arrangement (apps): '> (${ Id.VSub_Name PTHEME_ROX_PIN))})
    (C {<sleep>} {<1>})
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: 
                    (C {<Id.Lit_LBracket '['>} {(DQ ($ Id.VSub_DollarName '$PTHEME_ROX_DRIVEICONS'))} 
                      {<Id.Lit_RBracket ']'>}
                    )
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [
            (command.ForEach
              iter_name: I
              iter_words: [
                {<ICONDESK>}
                {<ICONPARTITIONS>}
                {<LABELPARTITIONS>}
                {<ICON_PLACE_EDGE_GAP>}
                {<ICON_PLACE_START_GAP>}
                {<ICON_PLACE_SPACING>}
                {<ICON_PLACE_ORIENTATION>}
              ]
              do_arg_iter: F
              body: 
                (command.DoGroup
                  children: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name name:TMP)
                          op: assign_op.Equal
                          rhs: 
                            {
                              (DQ 
                                (command_sub
                                  left_token: <Id.Left_Backtick '`'>
                                  child: 
                                    (C {<grep>} {(DQ <'^'> ($ Id.VSub_DollarName '$I'))} 
                                      {<'etc/eventmanager'>}
                                    )
                                )
                              )
                            }
                          spids: [1319]
                        )
                      ]
                    )
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name name:VALUE)
                          op: assign_op.Equal
                          rhs: 
                            {
                              (DQ 
                                (command_sub
                                  left_token: <Id.Left_Backtick '`'>
                                  child: 
                                    (command.Pipeline
                                      children: [
                                        (C {<grep>} {(DQ <'^'> ($ Id.VSub_DollarName '$I'))} 
                                          {
                                            (DQ <'usr/share/ptheme/eventmanager_driveicons/'> 
                                              (${ Id.VSub_Name PTHEME_ROX_DRIVEICONS)
                                            )
                                          }
                                        )
                                        (C {<cut>} {<-d> <Id.Lit_Equals '='>} {<-f2>})
                                      ]
                                      negated: F
                                    )
                                )
                              )
                            }
                          spids: [1336]
                        )
                      ]
                    )
                    (command.AndOr
                      ops: [Id.Op_DAmp]
                      children: [
                        (C {<Id.Lit_LBracket '['>} {<Id.KW_Bang '!'>} 
                          {(DQ ($ Id.VSub_DollarName '$VALUE'))} {<Id.Lit_RBracket ']'>}
                        )
                        (command.ControlFlow
                          token: <Id.ControlFlow_Continue continue>
                        )
                      ]
                    )
                    (C {<sed>} {<-i>} 
                      {
                        (DQ <'s/'> (${ Id.VSub_Name TMP) <'/'> (${ Id.VSub_Name I) <'='> 
                          (${ Id.VSub_Name VALUE) <'/'>
                        )
                      } {<'etc/eventmanager'>}
                    )
                  ]
                )
            )
          ]
          spids: [1281 1292]
        )
      ]
    )
    (C {<echo>} {(DQ <'rox icons arrangement (drives): '> (${ Id.VSub_Name PTHEME_ROX_DRIVEICONS))})
    (C {<sleep>} {<1>})
    (command.Simple
      words: [{<echo>} {<-n>} {(DQ (${ Id.VSub_Name PTHEME_ICONS))}]
      redirects: [
        (redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {<'etc/desktop_icon_theme'>}
        )
      ]
      do_fork: T
    )
    (C {<echo>} {(DQ <'icons: '> (${ Id.VSub_Name PTHEME_ICONS))})
    (C {<sleep>} {<1>})
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: (C {<Id.Lit_LBracket '['>} {<-d>} {<'root/.icons/'>} {<Id.Lit_RBracket ']'>})
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [
            (command.AndOr
              ops: [Id.Op_DAmp]
              children: [
                (C {<Id.Lit_LBracket '['>} {<Id.KW_Bang '!'>} 
                  {
                    (DQ 
                      (command_sub
                        left_token: <Id.Left_Backtick '`'>
                        child: 
                          (command.Simple
                            words: [{<grep>} {(SQ <'ORIGINAL THEME'>)}]
                            redirects: [
                              (redir
                                op: <Id.Redir_TLess '<<<'>
                                loc: (redir_loc.Fd fd:0)
                                arg: {(DQ ($ Id.VSub_DollarName '$PTHEME_MOUSE'))}
                              )
                            ]
                            do_fork: T
                          )
                      )
                    )
                  } {<Id.Lit_RBracket ']'>}
                )
                (C {<ln>} {<-snf>} {($ Id.VSub_DollarName '$PTHEME_MOUSE')} {<'root/.icons/default'>})
              ]
            )
            (C {<echo>} {(DQ <'cursor: '> (${ Id.VSub_Name PTHEME_MOUSE))})
            (C {<sleep>} {<1>})
          ]
          spids: [1467 1477]
        )
      ]
    )
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (C {<Id.Lit_LBracket '['>} {<-d>} {<'root/.config/ptheme/'>} {<Id.Lit_RBracket ']'>})
        (C {<mkdir>} {<-p>} {<'root/.config/ptheme/'>})
      ]
    )
    (C {<cp>} {<-f>} {(DQ <'usr/share/ptheme/gtkdialog/'> ($ Id.VSub_DollarName '$PTHEME_GTKDIALOG'))} 
      {<'root/.config/ptheme/gtkdialog_active'>}
    )
    (C {<echo>} {(DQ <'gtkdialog: '> (${ Id.VSub_Name PTHEME_GTKDIALOG))})
    (C {<sleep>} {<1>})
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:JWMRCVER)
          op: assign_op.Equal
          rhs: 
            {
              (command_sub
                left_token: <Id.Left_DollarParen '$('>
                child: 
                  (command.Pipeline
                    children: [
                      (C {<grep>} {<JWMRC_VERSION>} {<'etc/xdg/templates/_root_.jwmrc'>})
                      (C {<cut>} {<-f>} {<4>} {<-d>} {(SQ <_>)})
                      (C {<cut>} {<-f>} {<1>} {<-d>} {(SQ <' '>)})
                    ]
                    negated: F
                  )
              )
            }
          spids: [1587]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:UPDATEVER)
          op: assign_op.Equal
          rhs: 
            {
              (command_sub
                left_token: <Id.Left_DollarParen '$('>
                child: 
                  (command.Pipeline
                    children: [
                      (C {<grep>} {<JWMRC_VERSION>} {<'etc/rc.d/rc.update'>})
                      (C {<cut>} {<-f>} {<3>} {<-d>} {(SQ <_>)})
                      (C {<cut>} {<-f>} {<1>} {<-d>} {(SQ <' '>)})
                    ]
                    negated: F
                  )
              )
            }
          spids: [1624]
        )
      ]
    )
    (command.AndOr
      ops: [Id.Op_DAmp]
      children: [
        (C {<Id.Lit_LBracket '['>} {(DQ ($ Id.VSub_DollarName '$JWMRCVER'))} 
          {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ ($ Id.VSub_DollarName '$UPDATEVER'))} {<Id.Lit_RBracket ']'>}
        )
        (C {<sed>} {<-i>} 
          {
            (DQ <'s/'> ($ Id.VSub_DollarName '$UPDATEVER') <'/'> ($ Id.VSub_DollarName '$JWMRCVER') <'/'>)
          } {<'etc/rc.d/rc.update'>}
        )
      ]
    )
    (C {<sync>})
    (C {<echo>} {(DQ <done>)})
    (C {<echo>})
    (C {<echo>})
  ]
)