(command.CommandList
  children: [
    (command.AndOr
      children: [
        (command.Simple
          blame_tok: <Id.Lit_LBracket '['>
          more_env: []
          words: [
            {<Id.Lit_LBracket '['>}
            {<Id.KW_Bang '!'>}
            {<-z>}
            {(DQ ($ Id.VSub_Number 1))}
            {<Id.Lit_RBracket ']'>}
          ]
          redirects: []
          do_fork: T
        )
        (command.ShAssignment
          left: <Id.Lit_VarLike 'mag='>
          pairs: [
            (AssignPair
              left: <Id.Lit_VarLike 'mag='>
              lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'mag='> name:mag)
              op: assign_op.Equal
              rhs: {($ Id.VSub_Number 1)}
            )
          ]
          redirects: []
        )
        (command.ShAssignment
          left: <Id.Lit_VarLike 'mag='>
          pairs: [
            (AssignPair
              left: <Id.Lit_VarLike 'mag='>
              lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'mag='> name:mag)
              op: assign_op.Equal
              rhs: {<2>}
            )
          ]
          redirects: []
        )
      ]
      ops: [<Id.Op_DAmp _> <Id.Op_DPipe _>]
    )
    (command.ShFunction
      name_tok: <fullscreen_xmag_source>
      name: fullscreen_xmag_source
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.ShAssignment
              left: <Id.Lit_VarLike 'geometry='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'geometry='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'geometry='> name:geometry)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_Backtick '`'>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Simple
                                blame_tok: <xwininfo>
                                more_env: []
                                words: [{<xwininfo>} {<-root>}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <grep>
                                more_env: []
                                words: [{<grep>} {<-E>} {(DQ <geometry>)}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <sed>
                                more_env: []
                                words: [{<sed>} {(SQ <'s/.* \\([0-9]*x[0-9]*\\).*/\\1/'>)}]
                                redirects: []
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                          )
                        right: <Id.Backtick_Right '`'>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'width='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'width='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'width='> name:width)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_Backtick '`'>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Simple
                                blame_tok: <echo>
                                more_env: []
                                words: [{<echo>} {($ Id.VSub_DollarName geometry)}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <cut>
                                more_env: []
                                words: [{<cut>} {<-dx>} {<-f1>}]
                                redirects: []
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _>]
                          )
                        right: <Id.Backtick_Right '`'>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'height='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'height='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'height='> name:height)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_Backtick '`'>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Simple
                                blame_tok: <echo>
                                more_env: []
                                words: [{<echo>} {($ Id.VSub_DollarName geometry)}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <cut>
                                more_env: []
                                words: [{<cut>} {<-dx>} {<-f2>}]
                                redirects: []
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _>]
                          )
                        right: <Id.Backtick_Right '`'>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'xmag_menu='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'xmag_menu='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'xmag_menu='> name:xmag_menu)
                  op: assign_op.Equal
                  rhs: {<20>}
                )
              ]
              redirects: []
            )
            (command.Simple
              blame_tok: <echo>
              more_env: []
              words: [
                {<echo>}
                {
                  (CommandSub
                    left_token: <Id.Left_Backtick '`'>
                    child: 
                      (command.Simple
                        blame_tok: <expr>
                        more_env: []
                        words: [
                          {<expr>}
                          {($ Id.VSub_DollarName width)}
                          {<'/'>}
                          {($ Id.VSub_DollarName mag)}
                        ]
                        redirects: []
                        do_fork: T
                      )
                    right: <Id.Backtick_Right '`'>
                  ) <x> 
                  (CommandSub
                    left_token: <Id.Left_Backtick '`'>
                    child: 
                      (command.Simple
                        blame_tok: <expr>
                        more_env: []
                        words: [
                          {<expr>}
                          {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\('> ch:'(')}
                          {($ Id.VSub_DollarName height)}
                          {<->}
                          {($ Id.VSub_DollarName xmag_menu)}
                          {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\)'> ch:')')}
                          {<'/'>}
                          {($ Id.VSub_DollarName mag)}
                        ]
                        redirects: []
                        do_fork: T
                      )
                    right: <Id.Backtick_Right '`'>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.Simple
      blame_tok: <xmag>
      more_env: []
      words: [
        {<xmag>}
        {<-source>}
        {
          (CommandSub
            left_token: <Id.Left_Backtick '`'>
            child: 
              (command.Simple
                blame_tok: <fullscreen_xmag_source>
                more_env: []
                words: [{<fullscreen_xmag_source>}]
                redirects: []
                do_fork: T
              )
            right: <Id.Backtick_Right '`'>
          )
        }
        {<-mag>}
        {($ Id.VSub_DollarName mag)}
      ]
      redirects: []
      do_fork: T
    )
  ]
)