(CommandList
  children: [
    (Sentence
      child: 
        (Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (LhsName name:IFS)
              op: Equal
              rhs: 
                {
                  (SingleQuotedPart
                    left: <Left_DollarSingleQuote "$'">
                    tokens: [<Char_Literals ' '> <Char_OneChar '\\t'> <Char_OneChar '\\r'>]
                  )
                }
              spids: [36]
            )
            (assign_pair
              lhs: (LhsName name:VERSION)
              op: Equal
              rhs: {(5.1.2-bashcached)}
              spids: [43]
            )
          ]
          spids: [36]
        )
      terminator: <Op_Semi ';'>
    )
    (C {(export)} {(Lit_VarLike 'LANG=') (C)})
    (C {(trap)} {(SQ <'exit 0'>)} {(INT)} {(TERM)})
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (DBracket expr:(WordTest w:{(DQ ($ VSub_Name '$SOCAT_VERSION'))}))
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (Sentence
              child: 
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:send)
                      op: Equal
                      rhs: 
                        {
                          (DQ 
                            (CommandSubPart
                              command_list: (CommandList children:[(C {(mktemp)} {(-u)})])
                              left_token: <Left_CommandSub '$('>
                              spids: [79 83]
                            )
                          )
                        }
                      spids: [77]
                    )
                  ]
                  spids: [77]
                )
              terminator: <Op_Semi ';'>
            )
            (C {(mkfifo)} {(-m)} {(600)} {(DQ ($ VSub_Name '$send'))})
            (Sentence
              child: 
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:recv)
                      op: Equal
                      rhs: 
                        {
                          (DQ 
                            (CommandSubPart
                              command_list: (CommandList children:[(C {(mktemp)} {(-u)})])
                              left_token: <Left_CommandSub '$('>
                              spids: [100 104]
                            )
                          )
                        }
                      spids: [98]
                    )
                  ]
                  spids: [98]
                )
              terminator: <Op_Semi ';'>
            )
            (Sentence
              child: (C {(mkfifo)} {(-m)} {(600)} {(DQ ($ VSub_Name '$recv'))})
              terminator: <Op_Semi ';'>
            )
            (Sentence
              child: 
                (While
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: (BoolUnary op_id:BoolUnary_p child:{(DQ ($ VSub_Name '$recv'))})
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  body: 
                    (DoGroup
                      children: [
                        (Sentence
                          child: 
                            (SimpleCommand
                              words: [{(cat)} {(DQ ($ VSub_Name '$recv'))}]
                              redirects: [
                                (Redir
                                  op_id: Redir_Great
                                  fd: 2
                                  arg_word: {(/dev/null)}
                                  spids: [140]
                                )
                              ]
                            )
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      spids: [132 144]
                    )
                )
              terminator: <Op_Amp '&'>
            )
            (Sentence
              child: (C {(trap)} {(SQ <'rm -f "$recv" "$send"'>)} {(EXIT)})
              terminator: <Op_Semi ';'>
            )
            (While
              cond: [(Sentence child:(C {(read)} {(-ra)} {(cmd)}) terminator:<Op_Semi ';'>)]
              body: 
                (DoGroup
                  children: [
                    (Sentence
                      child: 
                        (Case
                          to_match: 
                            {
                              (BracedVarSub
                                token: <VSub_Name cmd>
                                bracket_op: (ArrayIndex expr:(ArithWord w:{(Lit_Digits 0)}))
                                spids: [171 176]
                              )
                            }
                          arms: [
                            (case_arm
                              pat_list: [{(set)} {(add)} {(replace)} {(append)} {(prepend)} {(cas)}]
                              action: [
                                (Sentence
                                  child: 
                                    (While
                                      cond: [(Sentence child:(C {(true)}) terminator:<Op_Semi ';'>)]
                                      body: 
                                        (DoGroup
                                          children: [
                                            (AndOr
                                              ops: [Op_DAmp]
                                              children: [
                                                (SimpleCommand
                                                  words: [
                                                    {(printf)}
                                                    {(SQ <'recv=%q send=%q cmd=%q\\n'>)}
                                                    {(DQ ($ VSub_Name '$recv'))}
                                                    {(DQ ($ VSub_Name '$send'))}
                                                    {
                                                      (DQ 
                                                        (BracedVarSub
                                                          token: <VSub_Name cmd>
                                                          bracket_op: (WholeArray op_id:Arith_Star)
                                                          spids: [217 222]
                                                        )
                                                      )
                                                    }
                                                  ]
                                                  redirects: [
                                                    (Redir
                                                      op_id: Redir_Great
                                                      fd: 16777215
                                                      arg_word: {(DQ ($ VSub_Name '$BASHCACHED_PIPE'))}
                                                      spids: [225]
                                                    )
                                                    (Redir
                                                      op_id: Redir_Great
                                                      fd: 2
                                                      arg_word: {(/dev/null)}
                                                      spids: [230]
                                                    )
                                                  ]
                                                )
                                                (ControlFlow
                                                  token: <ControlFlow_Break break>
                                                )
                                              ]
                                            )
                                          ]
                                          spids: [200 238]
                                        )
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                                (SimpleCommand
                                  words: [
                                    {(head)}
                                    {(-c)}
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          token: <VSub_Name cmd>
                                          bracket_op: (ArrayIndex expr:(ArithWord w:{(Lit_Digits 4)}))
                                          suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(0)})
                                          spids: [246 253]
                                        )
                                      )
                                    }
                                  ]
                                  redirects: [
                                    (Redir
                                      op_id: Redir_Great
                                      fd: 16777215
                                      arg_word: {(DQ ($ VSub_Name '$send'))}
                                      spids: [256]
                                    )
                                  ]
                                )
                              ]
                              spids: [181 192 260 16777215]
                            )
                            (case_arm
                              pat_list: [{(quit)}]
                              action: [(ControlFlow token:<ControlFlow_Exit exit>)]
                              spids: [263 264 267 16777215]
                            )
                            (case_arm
                              pat_list: [{(SQ )}]
                              spids: [16777215 271 273 16777215]
                            )
                            (case_arm
                              pat_list: [{(Lit_Other '*')}]
                              action: [
                                (While
                                  cond: [(Sentence child:(C {(true)}) terminator:<Op_Semi ';'>)]
                                  body: 
                                    (DoGroup
                                      children: [
                                        (Sentence
                                          child: 
                                            (AndOr
                                              ops: [Op_DAmp]
                                              children: [
                                                (SimpleCommand
                                                  words: [
                                                    {(printf)}
                                                    {(SQ <'recv=%q send=%q cmd=%q\\n'>)}
                                                    {(DQ ($ VSub_Name '$recv'))}
                                                    {(DQ ($ VSub_Name '$send'))}
                                                    {
                                                      (DQ 
                                                        (BracedVarSub
                                                          token: <VSub_Name cmd>
                                                          bracket_op: (WholeArray op_id:Arith_Star)
                                                          spids: [301 306]
                                                        )
                                                      )
                                                    }
                                                  ]
                                                  redirects: [
                                                    (Redir
                                                      op_id: Redir_Great
                                                      fd: 16777215
                                                      arg_word: {(DQ ($ VSub_Name '$BASHCACHED_PIPE'))}
                                                      spids: [309]
                                                    )
                                                    (Redir
                                                      op_id: Redir_Great
                                                      fd: 2
                                                      arg_word: {(/dev/null)}
                                                      spids: [314]
                                                    )
                                                  ]
                                                )
                                                (ControlFlow
                                                  token: <ControlFlow_Break break>
                                                )
                                              ]
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      spids: [283 322]
                                    )
                                )
                              ]
                              spids: [275 276 323 16777215]
                            )
                          ]
                          spids: [169 178 326]
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  spids: [167 329]
                )
            )
          ]
          spids: [16777215 74]
        )
      ]
      else_action: [
        (Sentence
          child: 
            (FuncDef
              name: help
              body: 
                (BraceGroup
                  children: [
                    (Sentence
                      child: 
                        (Pipeline
                          children: [
                            (SimpleCommand
                              words: [{(tail)} {(-n) (Lit_Other '+') (2)}]
                              redirects: [
                                (Redir
                                  op_id: Redir_Less
                                  fd: 16777215
                                  arg_word: {(DQ ($ VSub_Number '$0'))}
                                  spids: [346]
                                )
                              ]
                            )
                            (C {(head)} {(-n11)})
                            (C {(cut)} {(-c3-)})
                          ]
                          negated: F
                        )
                      terminator: <Op_Semi ';'>
                    )
                    (Sentence
                      child: (ControlFlow token:<ControlFlow_Exit exit>)
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  spids: [338]
                )
              spids: [334 337]
            )
          terminator: <Op_Semi ';'>
        )
        (FuncDef
          name: version
          body: 
            (BraceGroup
              children: [
                (Sentence
                  child: (C {(echo)} {($ VSub_Name '$VERSION')})
                  terminator: <Op_Semi ';'>
                )
                (Sentence
                  child: (ControlFlow token:<ControlFlow_Exit exit>)
                  terminator: <Op_Semi ';'>
                )
              ]
              spids: [374]
            )
          spids: [370 373]
        )
        (FuncDef
          name: license
          body: 
            (BraceGroup
              children: [
                (Sentence
                  child: 
                    (C {(curl)} 
                      {
                        (SQ 
                          <
'https://raw.githubusercontent.com/MakeNowJust/bashcached/master/LICENSE.MIT.md'
                          >
                        )
                      }
                    )
                  terminator: <Op_Semi ';'>
                )
                (Sentence child:(C {(echo)}) terminator:<Op_Semi ';'>)
                (Sentence
                  child: 
                    (C {(curl)} 
                      {
                        (SQ 
                          <
'https://raw.githubusercontent.com/MakeNowJust/bashcached/master/LICENSE.%F0%9F%8D%A3.md'
                          >
                        )
                      }
                    )
                  terminator: <Op_Semi ';'>
                )
                (Sentence
                  child: (ControlFlow token:<ControlFlow_Exit exit>)
                  terminator: <Op_Semi ';'>
                )
              ]
              spids: [391]
            )
          spids: [387 390]
        )
        (ForEach
          iter_name: v
          iter_words: [{(DQ ($ VSub_At '$@'))}]
          do_arg_iter: F
          body: 
            (DoGroup
              children: [
                (Sentence
                  child: 
                    (AndOr
                      ops: [Op_DAmp]
                      children: [
                        (DBracket
                          expr: 
                            (BoolBinary
                              op_id: BoolBinary_GlobDEqual
                              left: {($ VSub_Name '$v')}
                              right: {(--) (Lit_Other '*')}
                            )
                        )
                        (C {(eval)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name v>
                                suffix_op: (Slice begin:(ArithWord w:{(Lit_Digits 2)}))
                                spids: [446 450]
                              )
                            )
                          }
                        )
                      ]
                    )
                  terminator: <Op_Semi ';'>
                )
              ]
              spids: [428 454]
            )
          spids: [422 426]
        )
        (Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair lhs:(LhsName name:unique) op:Equal rhs:{(1)} spids:[462])
            (assign_pair
              lhs: (LhsName name:before)
              op: Equal
              rhs: 
                {
                  (CommandSubPart
                    command_list: (CommandList children:[(C {(printf)} {(SQ <'%(%s)T'>)} {(-1)})])
                    left_token: <Left_CommandSub '$('>
                    spids: [466 474]
                  )
                }
              spids: [465]
            )
          ]
          spids: [462]
        )
        (Assignment
          keyword: Assign_Declare
          flags: [-A]
          pairs: [
            (assign_pair
              lhs: (LhsName name:flags)
              op: Equal
              rhs: {(ArrayLiteralPart)}
              spids: [481]
            )
            (assign_pair
              lhs: (LhsName name:exptime)
              op: Equal
              rhs: {(ArrayLiteralPart)}
              spids: [485]
            )
            (assign_pair
              lhs: (LhsName name:casUnique)
              op: Equal
              rhs: {(ArrayLiteralPart)}
              spids: [489]
            )
            (assign_pair
              lhs: (LhsName name:data)
              op: Equal
              rhs: {(ArrayLiteralPart)}
              spids: [493]
            )
          ]
          spids: [477]
        )
        (FuncDef
          name: cache_has
          body: 
            (BraceGroup
              children: [
                (Sentence
                  child: 
                    (AndOr
                      ops: [Op_DAmp]
                      children: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:t)
                              op: Equal
                              rhs: 
                                {
                                  (BracedVarSub
                                    token: <VSub_Name exptime>
                                    bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Number '$1')}))
                                    spids: [510 515]
                                  )
                                }
                              spids: [509]
                            )
                          ]
                          spids: [509]
                        )
                        (DBracket
                          expr: 
                            (LogicalAnd
                              left: (WordTest w:{($ VSub_Name '$t')})
                              right: 
                                (LogicalOr
                                  left: 
                                    (BoolBinary
                                      op_id: BoolBinary_eq
                                      left: {($ VSub_Name '$t')}
                                      right: {(0)}
                                    )
                                  right: 
                                    (BoolBinary
                                      op_id: BoolBinary_gt
                                      left: {($ VSub_Name '$t')}
                                      right: {($ VSub_Name '$time')}
                                    )
                                )
                            )
                        )
                      ]
                    )
                  terminator: <Op_Semi ';'>
                )
              ]
              spids: [507]
            )
          spids: [503 506]
        )
        (FuncDef
          name: cache_update
          body: 
            (BraceGroup
              children: [
                (Sentence
                  child: 
                    (C 
                      {(data) (Lit_Other '[') ($ VSub_Number '$1') (Lit_Other ']') (Lit_Other '=') 
                        ($ VSub_Number '$2')
                      }
                    )
                  terminator: <Op_Semi ';'>
                )
                (Sentence
                  child: 
                    (AndOr
                      ops: [Op_DAmp Op_DPipe]
                      children: [
                        (DBracket expr:(WordTest w:{($ VSub_Number '$3')}))
                        (C 
                          {(casUnique) (Lit_Other '[') ($ VSub_Number '$1') (Lit_Other ']') 
                            (Lit_Other '=') (DQ ($ VSub_Number '$3'))
                          }
                        )
                        (C 
                          {(casUnique) (Lit_Other '[') ($ VSub_Number '$1') (Lit_Other ']') 
                            (Lit_Other '=') (ArithSubPart anode:(UnaryAssign op_id:Node_PostDPlus child:(LhsName name:unique)) spids:[587 591])
                          }
                        )
                      ]
                    )
                  terminator: <Op_Semi ';'>
                )
              ]
              spids: [553]
            )
          spids: [549 552]
        )
        (FuncDef
          name: cache_set
          body: 
            (BraceGroup
              children: [
                (Sentence
                  child: 
                    (C 
                      {(flags) (Lit_Other '[') ($ VSub_Number '$1') (Lit_Other ']') (Lit_Other '=') 
                        ($ VSub_Number '$2')
                      } 
                      {(exptime) (Lit_Other '[') ($ VSub_Number '$1') (Lit_Other ']') (Lit_Other '=') 
                        (ArithSubPart
                          anode: 
                            (TernaryOp
                              cond: 
                                (ArithBinary
                                  op_id: Arith_DAmp
                                  left: 
                                    (ArithBinary
                                      op_id: Arith_Less
                                      left: (ArithWord w:{(Lit_Digits 0)})
                                      right: (ArithWord w:{($ VSub_Number '$3')})
                                    )
                                  right: 
                                    (ArithBinary
                                      op_id: Arith_LessEqual
                                      left: (ArithWord w:{($ VSub_Number '$3')})
                                      right: (ArithWord w:{(Lit_Digits 2592000)})
                                    )
                                )
                              true_expr: 
                                (ArithBinary
                                  op_id: Arith_Plus
                                  left: (ArithWord w:{($ VSub_Number '$3')})
                                  right: (ArithVarRef name:time)
                                )
                              false_expr: (ArithWord w:{($ VSub_Number '$3')})
                            )
                          spids: [615 642]
                        )
                      }
                    )
                  terminator: <Op_Semi ';'>
                )
                (Sentence
                  child: 
                    (C {(cache_update)} {(DQ ($ VSub_Number '$1'))} {(DQ ($ VSub_Number '$4'))} 
                      {(DQ ($ VSub_Number '$5'))}
                    )
                  terminator: <Op_Semi ';'>
                )
              ]
              spids: [601]
            )
          spids: [597 600]
        )
        (FuncDef
          name: cache_get
          body: 
            (BraceGroup
              children: [
                (Sentence
                  child: 
                    (AndOr
                      ops: [Op_DAmp Op_DAmp Op_DAmp Op_DAmp]
                      children: [
                        (C {(cache_has)} {(DQ ($ VSub_Number '$1'))})
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:d)
                              op: Equal
                              rhs: 
                                {
                                  (DQ 
                                    (BracedVarSub
                                      token: <VSub_Name data>
                                      bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Number '$1')}))
                                      spids: [679 684]
                                    )
                                  )
                                }
                              spids: [677]
                            )
                          ]
                          spids: [677]
                        )
                        (C {(printf)} 
                          {
                            (SingleQuotedPart
                              left: <Left_DollarSingleQuote "$'">
                              tokens: [
                                <Char_Literals 'VALUE %s %s %s%s'>
                                <Char_OneChar '\\r'>
                                <Char_OneChar '\\n'>
                              ]
                            )
                          } {(DQ ($ VSub_Number '$1'))} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name flags>
                                bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Number '$1')}))
                                spids: [704 709]
                              )
                            )
                          } 
                          {
                            (DQ 
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (Pipeline
                                        children: [
                                          (C {(echo)} {(-n)} {(DQ ($ VSub_Name '$d'))})
                                          (C {(base64)} {(-d)})
                                          (C {(wc)} {(-c)})
                                        ]
                                        negated: F
                                      )
                                    ]
                                  )
                                left_token: <Left_CommandSub '$('>
                                spids: [713 733]
                              )
                            )
                          } 
                          {
                            (DQ 
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (AndOr
                                        ops: [Op_DAmp]
                                        children: [
                                          (DBracket
                                            expr: (WordTest w:{($ VSub_Number '$2')})
                                          )
                                          (C {(echo)} 
                                            {
                                              (DQ (' ') 
                                                (BracedVarSub
                                                  token: <VSub_Name casUnique>
                                                  bracket_op: 
                                                    (ArrayIndex
                                                      expr: (ArithWord w:{($ VSub_Number '$1')})
                                                    )
                                                  spids: [750 755]
                                                )
                                              )
                                            }
                                          )
                                        ]
                                      )
                                    ]
                                  )
                                left_token: <Left_CommandSub '$('>
                                spids: [737 757]
                              )
                            )
                          }
                        )
                        (Pipeline
                          children: [(C {(echo)} {(-n)} {(DQ ($ VSub_Name '$d'))}) (C {(base64)} {(-d)})]
                          negated: F
                        )
                        (C {(echo)} {(-e)} {(SQ <'\\r'>)})
                      ]
                    )
                  terminator: <Op_Semi ';'>
                )
              ]
              spids: [667]
            )
          spids: [663 666]
        )
        (FuncDef
          name: cache_delete
          body: 
            (BraceGroup
              children: [
                (Sentence
                  child: 
                    (C {(unset)} {(DQ ('flags[') ($ VSub_Number '$1') (']'))} 
                      {(DQ ('exptime[') ($ VSub_Number '$1') (']'))} {(DQ ('casUnique[') ($ VSub_Number '$1') (']'))} {(DQ ('data[') ($ VSub_Number '$1') (']'))}
                    )
                  terminator: <Op_Semi ';'>
                )
              ]
              spids: [795]
            )
          spids: [791 794]
        )
        (FuncDef
          name: read_data
          body: 
            (BraceGroup
              children: [
                (Sentence
                  child: 
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:d)
                          op: Equal
                          rhs: 
                            {
                              (DQ 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (Pipeline
                                          children: [
                                            (C {(head)} {(-c)} {(DQ ($ VSub_Number '$1'))} 
                                              {(DQ ($ VSub_Name '$send'))}
                                            )
                                            (C {(base64)})
                                          ]
                                          negated: F
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [840 856]
                                )
                              )
                            }
                          spids: [838]
                        )
                      ]
                      spids: [838]
                    )
                  terminator: <Op_Semi ';'>
                )
              ]
              spids: [836]
            )
          spids: [832 835]
        )
        (FuncDef
          name: base64_cat
          body: 
            (BraceGroup
              children: [
                (Sentence
                  child: 
                    (Pipeline
                      children: [
                        (C {(cat)} 
                          {
                            (CommandSubPart
                              command_list: 
                                (CommandList
                                  children: [
                                    (Pipeline
                                      children: [
                                        (C {(echo)} {(-n)} {(DQ ($ VSub_Number '$1'))})
                                        (C {(base64)} {(-d)})
                                      ]
                                      negated: F
                                    )
                                  ]
                                )
                              left_token: <Left_ProcSubIn '<('>
                              spids: [871 885]
                            )
                          } 
                          {
                            (CommandSubPart
                              command_list: 
                                (CommandList
                                  children: [
                                    (Pipeline
                                      children: [
                                        (C {(echo)} {(-n)} {(DQ ($ VSub_Number '$2'))})
                                        (C {(base64)} {(-d)})
                                      ]
                                      negated: F
                                    )
                                  ]
                                )
                              left_token: <Left_ProcSubIn '<('>
                              spids: [887 901]
                            )
                          }
                        )
                        (C {(base64)})
                      ]
                      negated: F
                    )
                  terminator: <Op_Semi ';'>
                )
              ]
              spids: [867]
            )
          spids: [863 866]
        )
        (Sentence
          child: 
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:BASHCACHED_PIPE)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (CommandSubPart
                          command_list: (CommandList children:[(C {(mktemp)} {(-u)})])
                          left_token: <Left_CommandSub '$('>
                          spids: [914 918]
                        )
                      )
                    }
                  spids: [912]
                )
              ]
              spids: [912]
            )
          terminator: <Op_Semi ';'>
        )
        (Sentence child:(C {(export)} {(BASHCACHED_PIPE)}) terminator:<Op_Semi ';'>)
        (C {(mkfifo)} {(-m)} {(600)} {(DQ ($ VSub_Name '$BASHCACHED_PIPE'))})
        (C {(trap)} {(SQ <'rm -f "$BASHCACHED_PIPE"'>)} {(EXIT)})
        (Sentence
          child: 
            (AndOr
              ops: [Op_DAmp]
              children: [
                (DParen
                  child: 
                    (ArithBinary
                      op_id: Arith_NEqual
                      left: 
                        (ArithWord
                          w: 
                            {
                              (BracedVarSub
                                token: <VSub_Name check>
                                suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(60)})
                                spids: [949 953]
                              )
                            }
                        )
                      right: (ArithWord w:{(Lit_Digits 0)})
                    )
                )
                (While
                  cond: [(Sentence child:(C {(echo)}) terminator:<Op_Semi ';'>)]
                  body: 
                    (DoGroup
                      children: [
                        (Sentence
                          child: 
                            (C {(sleep)} 
                              {
                                (DQ 
                                  (BracedVarSub
                                    token: <VSub_Name check>
                                    suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(60)})
                                    spids: [974 978]
                                  )
                                )
                              }
                            )
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      spids: [969 982]
                    )
                  redirects: [
                    (Redir
                      op_id: Redir_Great
                      fd: 16777215
                      arg_word: {(DQ ($ VSub_Name '$BASHCACHED_PIPE'))}
                      spids: [984]
                    )
                  ]
                )
              ]
            )
          terminator: <Op_Amp '&'>
        )
        (Sentence
          child: 
            (Pipeline
              children: [
                (While
                  cond: [(Sentence child:(C {(true)}) terminator:<Op_Semi ';'>)]
                  body: 
                    (DoGroup
                      children: [
                        (Sentence
                          child: (C {(cat)} {(DQ ($ VSub_Name '$BASHCACHED_PIPE'))})
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      spids: [998 1007]
                    )
                )
                (While
                  cond: [(Sentence child:(C {(read)} {(-r)} {(line)}) terminator:<Op_Semi ';'>)]
                  body: 
                    (DoGroup
                      children: [
                        (Sentence
                          child: 
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:cmd)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [1023]
                                )
                                (assign_pair
                                  lhs: (LhsName name:recv)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [1027]
                                )
                                (assign_pair
                                  lhs: (LhsName name:send)
                                  op: Equal
                                  rhs: {(EmptyPart)}
                                  spids: [1031]
                                )
                              ]
                              spids: [1023]
                            )
                          terminator: <Op_Semi ';'>
                        )
                        (Sentence
                          child: (C {(eval)} {(DQ ($ VSub_Name '$line'))})
                          terminator: <Op_Semi ';'>
                        )
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:cmd)
                              op: Equal
                              rhs: {(ArrayLiteralPart words:[{($ VSub_Name '$cmd')}])}
                              spids: [1041]
                            )
                            (assign_pair
                              lhs: (LhsName name:time)
                              op: Equal
                              rhs: 
                                {
                                  (CommandSubPart
                                    command_list: 
                                      (CommandList
                                        children: [(C {(printf)} {(SQ <'%(%s)T'>)} {(-1)})]
                                      )
                                    left_token: <Left_CommandSub '$('>
                                    spids: [1047 1055]
                                  )
                                }
                              spids: [1046]
                            )
                          ]
                          spids: [1041]
                        )
                        (AndOr
                          ops: [Op_DAmp Op_DAmp]
                          children: [
                            (DParen
                              child: 
                                (ArithBinary
                                  op_id: Arith_GreatEqual
                                  left: 
                                    (ArithBinary
                                      op_id: Arith_Minus
                                      left: (ArithVarRef name:time)
                                      right: (ArithVarRef name:before)
                                    )
                                  right: 
                                    (ArithWord
                                      w: 
                                        {
                                          (BracedVarSub
                                            token: <VSub_Name check>
                                            suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(60)})
                                            spids: [1068 1072]
                                          )
                                        }
                                    )
                                )
                            )
                            (ForEach
                              iter_name: k
                              iter_words: [
                                {
                                  (DQ 
                                    (BracedVarSub
                                      token: <VSub_Name exptime>
                                      prefix_op: VSub_Bang
                                      bracket_op: (WholeArray op_id:Lit_At)
                                      spids: [1086 1092]
                                    )
                                  )
                                }
                              ]
                              do_arg_iter: F
                              body: 
                                (DoGroup
                                  children: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          ops: [Op_DAmp]
                                          children: [
                                            (Pipeline
                                              children: [(C {(cache_has)} {($ VSub_Name '$k')})]
                                              negated: T
                                            )
                                            (C {(cache_delete)} {($ VSub_Name '$k')})
                                          ]
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  spids: [1096 1112]
                                )
                              spids: [1084 1094]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:before)
                                  op: Equal
                                  rhs: {($ VSub_Name '$time')}
                                  spids: [1116]
                                )
                              ]
                              spids: [1116]
                            )
                          ]
                        )
                        (AndOr
                          ops: [Op_DAmp]
                          children: [
                            (DBracket
                              expr: 
                                (LogicalNot
                                  child: (BoolUnary op_id:BoolUnary_p child:{($ VSub_Name '$recv')})
                                )
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                        )
                        (Sentence
                          child: 
                            (Case
                              to_match: 
                                {
                                  (BracedVarSub
                                    token: <VSub_Name cmd>
                                    bracket_op: (ArrayIndex expr:(ArithWord w:{(Lit_Digits 0)}))
                                    spids: [1137 1142]
                                  )
                                }
                              arms: [
                                (case_arm
                                  pat_list: [{(set)}]
                                  action: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          ops: [Op_DPipe]
                                          children: [
                                            (C {(read_data)} 
                                              {
                                                (BracedVarSub
                                                  token: <VSub_Name cmd>
                                                  bracket_op: 
                                                    (ArrayIndex
                                                      expr: (ArithWord w:{(Lit_Digits 4)})
                                                    )
                                                  spids: [1152 1157]
                                                )
                                              }
                                            )
                                            (ControlFlow
                                              token: <ControlFlow_Return return>
                                              arg_word: {(1)}
                                            )
                                          ]
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                    (C {(cache_set)} 
                                      {
                                        (BracedVarSub
                                          token: <VSub_Name cmd>
                                          bracket_op: (ArrayIndex expr:(ArithWord w:{(Lit_Digits 1)}))
                                          spids: [1168 1173]
                                        )
                                      } 
                                      {
                                        (BracedVarSub
                                          token: <VSub_Name cmd>
                                          bracket_op: (ArrayIndex expr:(ArithWord w:{(Lit_Digits 2)}))
                                          spids: [1175 1180]
                                        )
                                      } 
                                      {
                                        (BracedVarSub
                                          token: <VSub_Name cmd>
                                          bracket_op: (ArrayIndex expr:(ArithWord w:{(Lit_Digits 3)}))
                                          spids: [1182 1187]
                                        )
                                      } {(DQ ($ VSub_Name '$d'))}
                                    )
                                    (AndOr
                                      ops: [Op_DAmp]
                                      children: [
                                        (DBracket
                                          expr: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobNEqual
                                              left: 
                                                {
                                                  (BracedVarSub
                                                    token: <VSub_Name cmd>
                                                    bracket_op: 
                                                      (ArrayIndex
                                                        expr: (ArithWord w:{(Lit_Digits 5)})
                                                      )
                                                    spids: [1196 1201]
                                                  )
                                                }
                                              right: {(noreply)}
                                            )
                                        )
                                        (SimpleCommand
                                          words: [{(echo)} {(-e)} {(DQ (STORED) (Lit_Other '\\') (r))}]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Great
                                              fd: 16777215
                                              arg_word: {(DQ ($ VSub_Name '$recv'))}
                                              spids: [1220]
                                            )
                                          ]
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [1147 1148 1224 16777215]
                                )
                                (case_arm
                                  pat_list: [{(add)}]
                                  action: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          ops: [Op_DPipe]
                                          children: [
                                            (C {(read_data)} 
                                              {
                                                (BracedVarSub
                                                  token: <VSub_Name cmd>
                                                  bracket_op: 
                                                    (ArrayIndex
                                                      expr: (ArithWord w:{(Lit_Digits 4)})
                                                    )
                                                  spids: [1232 1237]
                                                )
                                              }
                                            )
                                            (ControlFlow
                                              token: <ControlFlow_Return return>
                                              arg_word: {(1)}
                                            )
                                          ]
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                    (AndOr
                                      ops: [Op_DAmp Op_DAmp Op_DPipe]
                                      children: [
                                        (Pipeline
                                          children: [
                                            (C {(cache_has)} 
                                              {
                                                (BracedVarSub
                                                  token: <VSub_Name cmd>
                                                  bracket_op: 
                                                    (ArrayIndex
                                                      expr: (ArithWord w:{(Lit_Digits 1)})
                                                    )
                                                  spids: [1250 1255]
                                                )
                                              }
                                            )
                                          ]
                                          negated: T
                                        )
                                        (C {(cache_set)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name cmd>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 1)})
                                                )
                                              spids: [1261 1266]
                                            )
                                          } 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name cmd>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 2)})
                                                )
                                              spids: [1268 1273]
                                            )
                                          } 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name cmd>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 3)})
                                                )
                                              spids: [1275 1280]
                                            )
                                          } {(DQ ($ VSub_Name '$d'))}
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:result)
                                              op: Equal
                                              rhs: {(STORED)}
                                              spids: [1289]
                                            )
                                          ]
                                          spids: [1289]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:result)
                                              op: Equal
                                              rhs: {(NOT_STORED)}
                                              spids: [1294]
                                            )
                                          ]
                                          spids: [1294]
                                        )
                                      ]
                                    )
                                    (AndOr
                                      ops: [Op_DAmp]
                                      children: [
                                        (DBracket
                                          expr: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobNEqual
                                              left: 
                                                {
                                                  (BracedVarSub
                                                    token: <VSub_Name cmd>
                                                    bracket_op: 
                                                      (ArrayIndex
                                                        expr: (ArithWord w:{(Lit_Digits 5)})
                                                      )
                                                    spids: [1300 1305]
                                                  )
                                                }
                                              right: {(noreply)}
                                            )
                                        )
                                        (SimpleCommand
                                          words: [
                                            {(echo)}
                                            {(-e)}
                                            {(DQ ($ VSub_Name '$result') (Lit_Other '\\') (r))}
                                          ]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Great
                                              fd: 16777215
                                              arg_word: {(DQ ($ VSub_Name '$recv'))}
                                              spids: [1324]
                                            )
                                          ]
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [1227 1228 1328 16777215]
                                )
                                (case_arm
                                  pat_list: [{(replace)}]
                                  action: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          ops: [Op_DPipe]
                                          children: [
                                            (C {(read_data)} 
                                              {
                                                (BracedVarSub
                                                  token: <VSub_Name cmd>
                                                  bracket_op: 
                                                    (ArrayIndex
                                                      expr: (ArithWord w:{(Lit_Digits 4)})
                                                    )
                                                  spids: [1336 1341]
                                                )
                                              }
                                            )
                                            (ControlFlow
                                              token: <ControlFlow_Return return>
                                              arg_word: {(1)}
                                            )
                                          ]
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                    (AndOr
                                      ops: [Op_DAmp Op_DAmp Op_DPipe]
                                      children: [
                                        (C {(cache_has)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name cmd>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 1)})
                                                )
                                              spids: [1352 1357]
                                            )
                                          }
                                        )
                                        (C {(cache_set)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name cmd>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 1)})
                                                )
                                              spids: [1363 1368]
                                            )
                                          } 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name cmd>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 2)})
                                                )
                                              spids: [1370 1375]
                                            )
                                          } 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name cmd>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 3)})
                                                )
                                              spids: [1377 1382]
                                            )
                                          } {(DQ ($ VSub_Name '$d'))}
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:result)
                                              op: Equal
                                              rhs: {(STORED)}
                                              spids: [1391]
                                            )
                                          ]
                                          spids: [1391]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:result)
                                              op: Equal
                                              rhs: {(NOT_STORED)}
                                              spids: [1396]
                                            )
                                          ]
                                          spids: [1396]
                                        )
                                      ]
                                    )
                                    (AndOr
                                      ops: [Op_DAmp]
                                      children: [
                                        (DBracket
                                          expr: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobNEqual
                                              left: 
                                                {
                                                  (BracedVarSub
                                                    token: <VSub_Name cmd>
                                                    bracket_op: 
                                                      (ArrayIndex
                                                        expr: (ArithWord w:{(Lit_Digits 5)})
                                                      )
                                                    spids: [1402 1407]
                                                  )
                                                }
                                              right: {(noreply)}
                                            )
                                        )
                                        (SimpleCommand
                                          words: [
                                            {(echo)}
                                            {(-e)}
                                            {(DQ ($ VSub_Name '$result') (Lit_Other '\\') (r))}
                                          ]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Great
                                              fd: 16777215
                                              arg_word: {(DQ ($ VSub_Name '$recv'))}
                                              spids: [1426]
                                            )
                                          ]
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [1331 1332 1430 16777215]
                                )
                                (case_arm
                                  pat_list: [{(append)}]
                                  action: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          ops: [Op_DPipe]
                                          children: [
                                            (C {(read_data)} 
                                              {
                                                (BracedVarSub
                                                  token: <VSub_Name cmd>
                                                  bracket_op: 
                                                    (ArrayIndex
                                                      expr: (ArithWord w:{(Lit_Digits 4)})
                                                    )
                                                  spids: [1438 1443]
                                                )
                                              }
                                            )
                                            (ControlFlow
                                              token: <ControlFlow_Return return>
                                              arg_word: {(1)}
                                            )
                                          ]
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                    (AndOr
                                      ops: [Op_DAmp Op_DAmp Op_DPipe]
                                      children: [
                                        (C {(cache_has)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name cmd>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 1)})
                                                )
                                              spids: [1454 1459]
                                            )
                                          }
                                        )
                                        (C {(cache_update)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name cmd>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 1)})
                                                )
                                              spids: [1465 1470]
                                            )
                                          } 
                                          {
                                            (DQ 
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (C {(base64_cat)} 
                                                        {
                                                          (DQ 
                                                            (BracedVarSub
                                                              token: <VSub_Name data>
                                                              bracket_op: 
                                                                (ArrayIndex
                                                                  expr: 
                                                                    (ArithWord
                                                                      w: 
                                                                        {
                                                                          (BracedVarSub
                                                                            token: <VSub_Name cmd>
                                                                            bracket_op: 
                                                                              (ArrayIndex
                                                                                expr: 
                                                                                  (ArithWord
                                                                                    w: 
                                                                                      {
                                                                                        (
Lit_Digits 1
                                                                                        )
                                                                                      }
                                                                                  )
                                                                              )
                                                                            spids: [1482 1487]
                                                                          )
                                                                        }
                                                                    )
                                                                )
                                                              spids: [1479 1489]
                                                            )
                                                          )
                                                        } {(DQ ($ VSub_Name '$d'))}
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_CommandSub '$('>
                                                spids: [1475 1495]
                                              )
                                            )
                                          }
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:result)
                                              op: Equal
                                              rhs: {(STORED)}
                                              spids: [1500]
                                            )
                                          ]
                                          spids: [1500]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:result)
                                              op: Equal
                                              rhs: {(NOT_STORED)}
                                              spids: [1505]
                                            )
                                          ]
                                          spids: [1505]
                                        )
                                      ]
                                    )
                                    (AndOr
                                      ops: [Op_DAmp]
                                      children: [
                                        (DBracket
                                          expr: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobNEqual
                                              left: 
                                                {
                                                  (BracedVarSub
                                                    token: <VSub_Name cmd>
                                                    bracket_op: 
                                                      (ArrayIndex
                                                        expr: (ArithWord w:{(Lit_Digits 5)})
                                                      )
                                                    spids: [1511 1516]
                                                  )
                                                }
                                              right: {(noreply)}
                                            )
                                        )
                                        (SimpleCommand
                                          words: [
                                            {(echo)}
                                            {(-e)}
                                            {(DQ ($ VSub_Name '$result') (Lit_Other '\\') (r))}
                                          ]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Great
                                              fd: 16777215
                                              arg_word: {(DQ ($ VSub_Name '$recv'))}
                                              spids: [1535]
                                            )
                                          ]
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [1433 1434 1539 16777215]
                                )
                                (case_arm
                                  pat_list: [{(prepend)}]
                                  action: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          ops: [Op_DPipe]
                                          children: [
                                            (C {(read_data)} 
                                              {
                                                (BracedVarSub
                                                  token: <VSub_Name cmd>
                                                  bracket_op: 
                                                    (ArrayIndex
                                                      expr: (ArithWord w:{(Lit_Digits 4)})
                                                    )
                                                  spids: [1547 1552]
                                                )
                                              }
                                            )
                                            (ControlFlow
                                              token: <ControlFlow_Return return>
                                              arg_word: {(1)}
                                            )
                                          ]
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                    (AndOr
                                      ops: [Op_DAmp Op_DAmp Op_DPipe]
                                      children: [
                                        (C {(cache_has)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name cmd>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 1)})
                                                )
                                              spids: [1563 1568]
                                            )
                                          }
                                        )
                                        (C {(cache_update)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name cmd>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 1)})
                                                )
                                              spids: [1574 1579]
                                            )
                                          } 
                                          {
                                            (DQ 
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (C {(base64_cat)} {(DQ ($ VSub_Name '$d'))} 
                                                        {
                                                          (DQ 
                                                            (BracedVarSub
                                                              token: <VSub_Name data>
                                                              bracket_op: 
                                                                (ArrayIndex
                                                                  expr: 
                                                                    (ArithWord
                                                                      w: 
                                                                        {
                                                                          (BracedVarSub
                                                                            token: <VSub_Name cmd>
                                                                            bracket_op: 
                                                                              (ArrayIndex
                                                                                expr: 
                                                                                  (ArithWord
                                                                                    w: 
                                                                                      {
                                                                                        (
Lit_Digits 1
                                                                                        )
                                                                                      }
                                                                                  )
                                                                              )
                                                                            spids: [1595 1600]
                                                                          )
                                                                        }
                                                                    )
                                                                )
                                                              spids: [1592 1602]
                                                            )
                                                          )
                                                        }
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_CommandSub '$('>
                                                spids: [1584 1604]
                                              )
                                            )
                                          }
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:result)
                                              op: Equal
                                              rhs: {(STORED)}
                                              spids: [1609]
                                            )
                                          ]
                                          spids: [1609]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:result)
                                              op: Equal
                                              rhs: {(NOT_STORED)}
                                              spids: [1614]
                                            )
                                          ]
                                          spids: [1614]
                                        )
                                      ]
                                    )
                                    (AndOr
                                      ops: [Op_DAmp]
                                      children: [
                                        (DBracket
                                          expr: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobNEqual
                                              left: 
                                                {
                                                  (BracedVarSub
                                                    token: <VSub_Name cmd>
                                                    bracket_op: 
                                                      (ArrayIndex
                                                        expr: (ArithWord w:{(Lit_Digits 5)})
                                                      )
                                                    spids: [1620 1625]
                                                  )
                                                }
                                              right: {(noreply)}
                                            )
                                        )
                                        (SimpleCommand
                                          words: [
                                            {(echo)}
                                            {(-e)}
                                            {(DQ ($ VSub_Name '$result') (Lit_Other '\\') (r))}
                                          ]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Great
                                              fd: 16777215
                                              arg_word: {(DQ ($ VSub_Name '$recv'))}
                                              spids: [1644]
                                            )
                                          ]
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [1542 1543 1648 16777215]
                                )
                                (case_arm
                                  pat_list: [{(cas)}]
                                  action: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          ops: [Op_DPipe]
                                          children: [
                                            (C {(read_data)} 
                                              {
                                                (BracedVarSub
                                                  token: <VSub_Name cmd>
                                                  bracket_op: 
                                                    (ArrayIndex
                                                      expr: (ArithWord w:{(Lit_Digits 4)})
                                                    )
                                                  spids: [1656 1661]
                                                )
                                              }
                                            )
                                            (ControlFlow
                                              token: <ControlFlow_Return return>
                                              arg_word: {(1)}
                                            )
                                          ]
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (Pipeline
                                                  children: [
                                                    (C {(cache_has)} 
                                                      {
                                                        (BracedVarSub
                                                          token: <VSub_Name cmd>
                                                          bracket_op: 
                                                            (ArrayIndex
                                                              expr: (ArithWord w:{(Lit_Digits 1)})
                                                            )
                                                          spids: [1676 1681]
                                                        )
                                                      }
                                                    )
                                                  ]
                                                  negated: T
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:result)
                                                  op: Equal
                                                  rhs: {(NOT_FOUND)}
                                                  spids: [1686]
                                                )
                                              ]
                                              spids: [1686]
                                            )
                                          ]
                                          spids: [16777215 1684]
                                        )
                                      ]
                                      else_action: [
                                        (Sentence
                                          child: 
                                            (AndOr
                                              ops: [Op_DAmp Op_DAmp Op_DPipe]
                                              children: [
                                                (DBracket
                                                  expr: 
                                                    (BoolBinary
                                                      op_id: BoolBinary_eq
                                                      left: 
                                                        {
                                                          (BracedVarSub
                                                            token: <VSub_Name casUnique>
                                                            bracket_op: 
                                                              (ArrayIndex
                                                                expr: 
                                                                  (ArithWord
                                                                    w: 
                                                                      {
                                                                        (BracedVarSub
                                                                          token: <VSub_Name cmd>
                                                                          bracket_op: 
                                                                            (ArrayIndex
                                                                              expr: 
                                                                                (ArithWord
                                                                                  w: {(Lit_Digits 1)}
                                                                                )
                                                                            )
                                                                          spids: [1697 1702]
                                                                        )
                                                                      }
                                                                  )
                                                              )
                                                            spids: [1694 1704]
                                                          )
                                                        }
                                                      right: 
                                                        {
                                                          (BracedVarSub
                                                            token: <VSub_Name cmd>
                                                            bracket_op: 
                                                              (ArrayIndex
                                                                expr: (ArithWord w:{(Lit_Digits 5)})
                                                              )
                                                            spids: [1708 1713]
                                                          )
                                                        }
                                                    )
                                                )
                                                (C {(cache_set)} 
                                                  {
                                                    (BracedVarSub
                                                      token: <VSub_Name cmd>
                                                      bracket_op: 
                                                        (ArrayIndex
                                                          expr: (ArithWord w:{(Lit_Digits 1)})
                                                        )
                                                      spids: [1721 1726]
                                                    )
                                                  } 
                                                  {
                                                    (BracedVarSub
                                                      token: <VSub_Name cmd>
                                                      bracket_op: 
                                                        (ArrayIndex
                                                          expr: (ArithWord w:{(Lit_Digits 2)})
                                                        )
                                                      spids: [1728 1733]
                                                    )
                                                  } 
                                                  {
                                                    (BracedVarSub
                                                      token: <VSub_Name cmd>
                                                      bracket_op: 
                                                        (ArrayIndex
                                                          expr: (ArithWord w:{(Lit_Digits 3)})
                                                        )
                                                      spids: [1735 1740]
                                                    )
                                                  } {(DQ ($ VSub_Name '$d'))}
                                                )
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:result)
                                                      op: Equal
                                                      rhs: {(STORED)}
                                                      spids: [1749]
                                                    )
                                                  ]
                                                  spids: [1749]
                                                )
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:result)
                                                      op: Equal
                                                      rhs: {(EXISTS)}
                                                      spids: [1754]
                                                    )
                                                  ]
                                                  spids: [1754]
                                                )
                                              ]
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      spids: [1690 1758]
                                    )
                                    (AndOr
                                      ops: [Op_DAmp]
                                      children: [
                                        (DBracket
                                          expr: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobNEqual
                                              left: 
                                                {
                                                  (BracedVarSub
                                                    token: <VSub_Name cmd>
                                                    bracket_op: 
                                                      (ArrayIndex
                                                        expr: (ArithWord w:{(Lit_Digits 6)})
                                                      )
                                                    spids: [1763 1768]
                                                  )
                                                }
                                              right: {(noreply)}
                                            )
                                        )
                                        (SimpleCommand
                                          words: [
                                            {(echo)}
                                            {(-e)}
                                            {(DQ ($ VSub_Name '$result') (Lit_Other '\\') (r))}
                                          ]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Great
                                              fd: 16777215
                                              arg_word: {(DQ ($ VSub_Name '$recv'))}
                                              spids: [1787]
                                            )
                                          ]
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [1651 1652 1791 16777215]
                                )
                                (case_arm
                                  pat_list: [{(get)}]
                                  action: [
                                    (Subshell
                                      child: 
                                        (CommandList
                                          children: [
                                            (ForExpr
                                              init: 
                                                (BinaryAssign
                                                  op_id: Arith_Equal
                                                  left: (LhsName name:i)
                                                  right: (ArithWord w:{(Lit_Digits 1)})
                                                )
                                              cond: 
                                                (ArithBinary
                                                  op_id: Arith_Less
                                                  left: (ArithVarRef name:i)
                                                  right: 
                                                    (ArithWord
                                                      w: 
                                                        {
                                                          (BracedVarSub
                                                            token: <VSub_Name cmd>
                                                            prefix_op: VSub_Pound
                                                            bracket_op: (WholeArray op_id:Lit_At)
                                                            spids: [1810 1816]
                                                          )
                                                        }
                                                    )
                                                )
                                              update: 
                                                (UnaryAssign
                                                  op_id: Node_PostDPlus
                                                  child: (LhsName name:i)
                                                )
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (Sentence
                                                      child: 
                                                        (C {(cache_get)} 
                                                          {
                                                            (BracedVarSub
                                                              token: <VSub_Name cmd>
                                                              bracket_op: 
                                                                (ArrayIndex
                                                                  expr: 
                                                                    (ArithWord
                                                                      w: {($ VSub_Name '$i')}
                                                                    )
                                                                )
                                                              spids: [1829 1834]
                                                            )
                                                          }
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  spids: [1825 1837]
                                                )
                                            )
                                            (C {(echo)} {(-e)} {(SQ <'END\\r'>)})
                                          ]
                                        )
                                      redirects: [
                                        (Redir
                                          op_id: Redir_Great
                                          fd: 16777215
                                          arg_word: {(DQ ($ VSub_Name '$recv'))}
                                          spids: [1848]
                                        )
                                      ]
                                      spids: [1797 1847]
                                    )
                                  ]
                                  spids: [1794 1795 1852 16777215]
                                )
                                (case_arm
                                  pat_list: [{(gets)}]
                                  action: [
                                    (Subshell
                                      child: 
                                        (CommandList
                                          children: [
                                            (ForExpr
                                              init: 
                                                (BinaryAssign
                                                  op_id: Arith_Equal
                                                  left: (LhsName name:i)
                                                  right: (ArithWord w:{(Lit_Digits 1)})
                                                )
                                              cond: 
                                                (ArithBinary
                                                  op_id: Arith_Less
                                                  left: (ArithVarRef name:i)
                                                  right: 
                                                    (ArithWord
                                                      w: 
                                                        {
                                                          (BracedVarSub
                                                            token: <VSub_Name cmd>
                                                            prefix_op: VSub_Pound
                                                            bracket_op: (WholeArray op_id:Lit_At)
                                                            spids: [1871 1877]
                                                          )
                                                        }
                                                    )
                                                )
                                              update: 
                                                (UnaryAssign
                                                  op_id: Node_PostDPlus
                                                  child: (LhsName name:i)
                                                )
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (Sentence
                                                      child: 
                                                        (C {(cache_get)} 
                                                          {
                                                            (BracedVarSub
                                                              token: <VSub_Name cmd>
                                                              bracket_op: 
                                                                (ArrayIndex
                                                                  expr: 
                                                                    (ArithWord
                                                                      w: {($ VSub_Name '$i')}
                                                                    )
                                                                )
                                                              spids: [1890 1895]
                                                            )
                                                          } {(1)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  spids: [1886 1900]
                                                )
                                            )
                                            (C {(echo)} {(-e)} {(SQ <'END\\r'>)})
                                          ]
                                        )
                                      redirects: [
                                        (Redir
                                          op_id: Redir_Great
                                          fd: 16777215
                                          arg_word: {(DQ ($ VSub_Name '$recv'))}
                                          spids: [1911]
                                        )
                                      ]
                                      spids: [1858 1910]
                                    )
                                  ]
                                  spids: [1855 1856 1915 16777215]
                                )
                                (case_arm
                                  pat_list: [{(delete)}]
                                  action: [
                                    (AndOr
                                      ops: [Op_DAmp Op_DAmp Op_DPipe]
                                      children: [
                                        (C {(cache_has)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name cmd>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 1)})
                                                )
                                              spids: [1923 1928]
                                            )
                                          }
                                        )
                                        (C {(cache_delete)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name cmd>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 1)})
                                                )
                                              spids: [1934 1939]
                                            )
                                          }
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:result)
                                              op: Equal
                                              rhs: {(DELETED)}
                                              spids: [1944]
                                            )
                                          ]
                                          spids: [1944]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:result)
                                              op: Equal
                                              rhs: {(NOT_FOUND)}
                                              spids: [1949]
                                            )
                                          ]
                                          spids: [1949]
                                        )
                                      ]
                                    )
                                    (AndOr
                                      ops: [Op_DAmp]
                                      children: [
                                        (DBracket
                                          expr: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobNEqual
                                              left: 
                                                {
                                                  (BracedVarSub
                                                    token: <VSub_Name cmd>
                                                    bracket_op: 
                                                      (ArrayIndex
                                                        expr: (ArithWord w:{(Lit_Digits 2)})
                                                      )
                                                    spids: [1955 1960]
                                                  )
                                                }
                                              right: {(noreply)}
                                            )
                                        )
                                        (SimpleCommand
                                          words: [
                                            {(echo)}
                                            {(-e)}
                                            {(DQ ($ VSub_Name '$result') (Lit_Other '\\') (r))}
                                          ]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Great
                                              fd: 16777215
                                              arg_word: {(DQ ($ VSub_Name '$recv'))}
                                              spids: [1979]
                                            )
                                          ]
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [1918 1919 1983 16777215]
                                )
                                (case_arm
                                  pat_list: [{(incr)}]
                                  action: [
                                    (AndOr
                                      ops: [Op_DAmp Op_DAmp Op_DPipe]
                                      children: [
                                        (C {(cache_has)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name cmd>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 1)})
                                                )
                                              spids: [1991 1996]
                                            )
                                          }
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:result)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (ArithSubPart
                                                    anode: 
                                                      (ArithBinary
                                                        op_id: Arith_Plus
                                                        left: 
                                                          (ArithWord
                                                            w: 
                                                              {
                                                                (CommandSubPart
                                                                  command_list: 
                                                                    (CommandList
                                                                      children: [
                                                                        (Pipeline
                                                                          children: [
                                                                            (C {(echo)} {(-n)} 
                                                                              {
                                                                                (DQ 
                                                                                  (BracedVarSub
                                                                                    token: 
                                                                                      <VSub_Name 
data
                                                                                      >
                                                                                    bracket_op: 
                                                                                      (ArrayIndex
                                                                                        expr: 
                                                                                          (ArithWord
                                                                                            w: 
                                                                                              {
                                                                                                (BracedVarSub
                                                                                                  token: 
                                                                                                    <
VSub_Name cmd
                                                                                                    >
                                                                                                  bracket_op: 
                                                                                                    (ArrayIndex
                                                                                                      expr: 
                                                                                                        (ArithWord
                                                                                                          w: 
                                                                                                            {
                                                                                                              (
Lit_Digits 1
                                                                                                              )
                                                                                                            }
                                                                                                        )
                                                                                                    )
                                                                                                  spids: [
2011
2016
                                                                                                  ]
                                                                                                )
                                                                                              }
                                                                                          )
                                                                                      )
                                                                                    spids: [2008 2018]
                                                                                  )
                                                                                )
                                                                              }
                                                                            )
                                                                            (C {(base64)} {(-d)})
                                                                          ]
                                                                          negated: F
                                                                        )
                                                                      ]
                                                                    )
                                                                  left_token: <Left_CommandSub '$('>
                                                                  spids: [2002 2026]
                                                                )
                                                              }
                                                          )
                                                        right: 
                                                          (ArithWord
                                                            w: 
                                                              {
                                                                (BracedVarSub
                                                                  token: <VSub_Name cmd>
                                                                  bracket_op: 
                                                                    (ArrayIndex
                                                                      expr: 
                                                                        (ArithWord
                                                                          w: {(Lit_Digits 2)}
                                                                        )
                                                                    )
                                                                  suffix_op: 
                                                                    (StringUnary
                                                                      op_id: VTest_Hyphen
                                                                      arg_word: {(0)}
                                                                    )
                                                                  spids: [2030 2037]
                                                                )
                                                              }
                                                          )
                                                      )
                                                    spids: [2001 2039]
                                                  )
                                                }
                                              spids: [2000]
                                            )
                                          ]
                                          spids: [2000]
                                        )
                                        (C {(cache_update)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name cmd>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 1)})
                                                )
                                              spids: [2046 2051]
                                            )
                                          } 
                                          {
                                            (DQ 
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (Pipeline
                                                        children: [
                                                          (C {(echo)} {(-n)} {($ VSub_Name '$result')})
                                                          (C {(base64)})
                                                        ]
                                                        negated: F
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_CommandSub '$('>
                                                spids: [2054 2064]
                                              )
                                            )
                                          }
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:result)
                                              op: Equal
                                              rhs: {(NOT_FOUND)}
                                              spids: [2069]
                                            )
                                          ]
                                          spids: [2069]
                                        )
                                      ]
                                    )
                                    (AndOr
                                      ops: [Op_DAmp]
                                      children: [
                                        (DBracket
                                          expr: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobNEqual
                                              left: 
                                                {
                                                  (BracedVarSub
                                                    token: <VSub_Name cmd>
                                                    bracket_op: 
                                                      (ArrayIndex
                                                        expr: (ArithWord w:{(Lit_Digits 3)})
                                                      )
                                                    spids: [2075 2080]
                                                  )
                                                }
                                              right: {(noreply)}
                                            )
                                        )
                                        (SimpleCommand
                                          words: [
                                            {(echo)}
                                            {(-e)}
                                            {(DQ ($ VSub_Name '$result') (Lit_Other '\\') (r))}
                                          ]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Great
                                              fd: 16777215
                                              arg_word: {(DQ ($ VSub_Name '$recv'))}
                                              spids: [2099]
                                            )
                                          ]
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [1986 1987 2103 16777215]
                                )
                                (case_arm
                                  pat_list: [{(decr)}]
                                  action: [
                                    (AndOr
                                      ops: [Op_DAmp Op_DAmp Op_DPipe]
                                      children: [
                                        (C {(cache_has)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name cmd>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 1)})
                                                )
                                              spids: [2111 2116]
                                            )
                                          }
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:result)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (ArithSubPart
                                                    anode: 
                                                      (ArithBinary
                                                        op_id: Arith_Minus
                                                        left: 
                                                          (ArithWord
                                                            w: 
                                                              {
                                                                (CommandSubPart
                                                                  command_list: 
                                                                    (CommandList
                                                                      children: [
                                                                        (Pipeline
                                                                          children: [
                                                                            (C {(echo)} {(-n)} 
                                                                              {
                                                                                (DQ 
                                                                                  (BracedVarSub
                                                                                    token: 
                                                                                      <VSub_Name 
data
                                                                                      >
                                                                                    bracket_op: 
                                                                                      (ArrayIndex
                                                                                        expr: 
                                                                                          (ArithWord
                                                                                            w: 
                                                                                              {
                                                                                                (BracedVarSub
                                                                                                  token: 
                                                                                                    <
VSub_Name cmd
                                                                                                    >
                                                                                                  bracket_op: 
                                                                                                    (ArrayIndex
                                                                                                      expr: 
                                                                                                        (ArithWord
                                                                                                          w: 
                                                                                                            {
                                                                                                              (
Lit_Digits 1
                                                                                                              )
                                                                                                            }
                                                                                                        )
                                                                                                    )
                                                                                                  spids: [
2131
2136
                                                                                                  ]
                                                                                                )
                                                                                              }
                                                                                          )
                                                                                      )
                                                                                    spids: [2128 2138]
                                                                                  )
                                                                                )
                                                                              }
                                                                            )
                                                                            (C {(base64)} {(-d)})
                                                                          ]
                                                                          negated: F
                                                                        )
                                                                      ]
                                                                    )
                                                                  left_token: <Left_CommandSub '$('>
                                                                  spids: [2122 2146]
                                                                )
                                                              }
                                                          )
                                                        right: 
                                                          (ArithWord
                                                            w: 
                                                              {
                                                                (BracedVarSub
                                                                  token: <VSub_Name cmd>
                                                                  bracket_op: 
                                                                    (ArrayIndex
                                                                      expr: 
                                                                        (ArithWord
                                                                          w: {(Lit_Digits 2)}
                                                                        )
                                                                    )
                                                                  suffix_op: 
                                                                    (StringUnary
                                                                      op_id: VTest_Hyphen
                                                                      arg_word: {(0)}
                                                                    )
                                                                  spids: [2150 2157]
                                                                )
                                                              }
                                                          )
                                                      )
                                                    spids: [2121 2159]
                                                  )
                                                }
                                              spids: [2120]
                                            )
                                          ]
                                          spids: [2120]
                                        )
                                        (C {(cache_update)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name cmd>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 1)})
                                                )
                                              spids: [2166 2171]
                                            )
                                          } 
                                          {
                                            (DQ 
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (Pipeline
                                                        children: [
                                                          (C {(echo)} {(-n)} {($ VSub_Name '$result')})
                                                          (C {(base64)})
                                                        ]
                                                        negated: F
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_CommandSub '$('>
                                                spids: [2174 2184]
                                              )
                                            )
                                          }
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:result)
                                              op: Equal
                                              rhs: {(NOT_FOUND)}
                                              spids: [2189]
                                            )
                                          ]
                                          spids: [2189]
                                        )
                                      ]
                                    )
                                    (AndOr
                                      ops: [Op_DAmp]
                                      children: [
                                        (DBracket
                                          expr: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobNEqual
                                              left: 
                                                {
                                                  (BracedVarSub
                                                    token: <VSub_Name cmd>
                                                    bracket_op: 
                                                      (ArrayIndex
                                                        expr: (ArithWord w:{(Lit_Digits 3)})
                                                      )
                                                    spids: [2195 2200]
                                                  )
                                                }
                                              right: {(noreply)}
                                            )
                                        )
                                        (SimpleCommand
                                          words: [
                                            {(echo)}
                                            {(-e)}
                                            {(DQ ($ VSub_Name '$result') (Lit_Other '\\') (r))}
                                          ]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Great
                                              fd: 16777215
                                              arg_word: {(DQ ($ VSub_Name '$recv'))}
                                              spids: [2219]
                                            )
                                          ]
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [2106 2107 2223 16777215]
                                )
                                (case_arm
                                  pat_list: [{(touch)}]
                                  action: [
                                    (AndOr
                                      ops: [Op_DAmp Op_DAmp Op_DPipe]
                                      children: [
                                        (C {(cache_has)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name cmd>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 1)})
                                                )
                                              spids: [2231 2236]
                                            )
                                          }
                                        )
                                        (C {(cache_set)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name cmd>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 1)})
                                                )
                                              spids: [2243 2248]
                                            )
                                          } 
                                          {
                                            (DQ 
                                              (BracedVarSub
                                                token: <VSub_Name flags>
                                                bracket_op: 
                                                  (ArrayIndex
                                                    expr: 
                                                      (ArithWord
                                                        w: 
                                                          {
                                                            (BracedVarSub
                                                              token: <VSub_Name cmd>
                                                              bracket_op: 
                                                                (ArrayIndex
                                                                  expr: (ArithWord w:{(Lit_Digits 1)})
                                                                )
                                                              spids: [2254 2259]
                                                            )
                                                          }
                                                      )
                                                  )
                                                spids: [2251 2261]
                                              )
                                            )
                                          } 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name cmd>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 2)})
                                                )
                                              spids: [2264 2269]
                                            )
                                          } 
                                          {
                                            (DQ 
                                              (BracedVarSub
                                                token: <VSub_Name data>
                                                bracket_op: 
                                                  (ArrayIndex
                                                    expr: 
                                                      (ArithWord
                                                        w: 
                                                          {
                                                            (BracedVarSub
                                                              token: <VSub_Name cmd>
                                                              bracket_op: 
                                                                (ArrayIndex
                                                                  expr: (ArithWord w:{(Lit_Digits 1)})
                                                                )
                                                              spids: [2275 2280]
                                                            )
                                                          }
                                                      )
                                                  )
                                                spids: [2272 2282]
                                              )
                                            )
                                          } 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name casUnique>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: 
                                                    (ArithWord
                                                      w: 
                                                        {
                                                          (BracedVarSub
                                                            token: <VSub_Name cmd>
                                                            bracket_op: 
                                                              (ArrayIndex
                                                                expr: (ArithWord w:{(Lit_Digits 1)})
                                                              )
                                                            spids: [2288 2293]
                                                          )
                                                        }
                                                    )
                                                )
                                              spids: [2285 2295]
                                            )
                                          }
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:result)
                                              op: Equal
                                              rhs: {(TOUCHED)}
                                              spids: [2300]
                                            )
                                          ]
                                          spids: [2300]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:result)
                                              op: Equal
                                              rhs: {(NOT_FOUND)}
                                              spids: [2305]
                                            )
                                          ]
                                          spids: [2305]
                                        )
                                      ]
                                    )
                                    (AndOr
                                      ops: [Op_DAmp]
                                      children: [
                                        (DBracket
                                          expr: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobNEqual
                                              left: 
                                                {
                                                  (BracedVarSub
                                                    token: <VSub_Name cmd>
                                                    bracket_op: 
                                                      (ArrayIndex
                                                        expr: (ArithWord w:{(Lit_Digits 3)})
                                                      )
                                                    spids: [2311 2316]
                                                  )
                                                }
                                              right: {(noreply)}
                                            )
                                        )
                                        (SimpleCommand
                                          words: [
                                            {(echo)}
                                            {(-e)}
                                            {(DQ ($ VSub_Name '$result') (Lit_Other '\\') (r))}
                                          ]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Great
                                              fd: 16777215
                                              arg_word: {(DQ ($ VSub_Name '$recv'))}
                                              spids: [2335]
                                            )
                                          ]
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [2226 2227 2339 16777215]
                                )
                                (case_arm
                                  pat_list: [{(flush_all)}]
                                  action: [
                                    (ForEach
                                      iter_name: k
                                      iter_words: [
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              token: <VSub_Name exptime>
                                              prefix_op: VSub_Bang
                                              bracket_op: (WholeArray op_id:Lit_At)
                                              spids: [2352 2358]
                                            )
                                          )
                                        }
                                      ]
                                      do_arg_iter: F
                                      body: 
                                        (DoGroup
                                          children: [
                                            (Sentence
                                              child: 
                                                (C 
                                                  {(exptime) (Lit_Other '[') ($ VSub_Name '$k') 
                                                    (Lit_Other ']') (Lit_Other '=') 
                                                    (ArithSubPart
                                                      anode: 
                                                        (ArithBinary
                                                          op_id: Arith_Plus
                                                          left: (ArithVarRef name:time)
                                                          right: 
                                                            (ArithWord
                                                              w: 
                                                                {
                                                                  (BracedVarSub
                                                                    token: <VSub_Name cmd>
                                                                    bracket_op: 
                                                                      (ArrayIndex
                                                                        expr: 
                                                                          (ArithWord
                                                                            w: {(Lit_Digits 1)}
                                                                          )
                                                                      )
                                                                    suffix_op: 
                                                                      (StringUnary
                                                                        op_id: VTest_Hyphen
                                                                        arg_word: {(0)}
                                                                      )
                                                                    spids: [2374 2381]
                                                                  )
                                                                }
                                                            )
                                                        )
                                                      spids: [2369 2383]
                                                    )
                                                  }
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          spids: [2362 2386]
                                        )
                                      spids: [2350 2360]
                                    )
                                    (AndOr
                                      ops: [Op_DAmp]
                                      children: [
                                        (DBracket
                                          expr: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobNEqual
                                              left: 
                                                {
                                                  (BracedVarSub
                                                    token: <VSub_Name cmd>
                                                    bracket_op: 
                                                      (ArrayIndex
                                                        expr: 
                                                          (ArithUnary
                                                            op_id: Node_UnaryMinus
                                                            child: (ArithWord w:{(Lit_Digits 1)})
                                                          )
                                                      )
                                                    spids: [2391 2397]
                                                  )
                                                }
                                              right: {(noreply)}
                                            )
                                        )
                                        (SimpleCommand
                                          words: [{(echo)} {(-e)} {(DQ (OK) (Lit_Other '\\') (r))}]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Great
                                              fd: 16777215
                                              arg_word: {(DQ ($ VSub_Name '$recv'))}
                                              spids: [2416]
                                            )
                                          ]
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [2342 2343 2420 16777215]
                                )
                                (case_arm
                                  pat_list: [{(version)}]
                                  action: [
                                    (Sentence
                                      child: 
                                        (SimpleCommand
                                          words: [
                                            {(echo)}
                                            {(-e)}
                                            {
                                              (DQ ('VERSION ') ($ VSub_Name '$VERSION') 
                                                (Lit_Other '\\') (r)
                                              )
                                            }
                                          ]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Great
                                              fd: 16777215
                                              arg_word: {(DQ ($ VSub_Name '$recv'))}
                                              spids: [2436]
                                            )
                                          ]
                                        )
                                      terminator: <Op_Amp '&'>
                                    )
                                  ]
                                  spids: [2423 2424 2442 16777215]
                                )
                              ]
                              spids: [1135 1144 2445]
                            )
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      spids: [1020 2448]
                    )
                )
              ]
              negated: F
            )
          terminator: <Op_Amp '&'>
        )
        (C {(socat)} 
          {
            (DQ 
              (BracedVarSub
                token: <VSub_Name protocol>
                suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(tcp)})
                spids: [2456 2460]
              ) ('-listen:') 
              (BracedVarSub
                token: <VSub_Name port>
                suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(25252)})
                spids: [2462 2466]
              ) (',reuseaddr,fork')
            )
          } {(system) (Lit_Other ':') (DQ ($ VSub_Number '$0'))}
        )
      ]
      spids: [331 2476]
    )
  ]
)