(CommandList
  children: [
    (C {(hash)} {(-r)})
    (C {(set)} {(-e)})
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:port) op:Equal rhs:{(8443)} spids:[18])]
      spids: [18]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (DBracket
                  expr: (BoolBinary op_id:BoolBinary_GlobNEqual left:{($ VSub_Number "$1")} right:{(DQ )})
                )
              terminator: <Op_Semi ";">
            )
          ]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:target)
                  op: Equal
                  rhs: {($ VSub_Number "$1")}
                  spids: [41]
                )
              ]
              spids: [41]
            )
          ]
          spids: [-1 38]
        )
      ]
      else_action: [
        (Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (LhsName name:target)
              op: Equal
              rhs: {(supermarket.chef.io)}
              spids: [47]
            )
          ]
          spids: [47]
        )
      ]
      spids: [44 50]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (DBracket
                  expr: (BoolBinary op_id:BoolBinary_GlobNEqual left:{($ VSub_Number "$2")} right:{(DQ )})
                )
              terminator: <Op_Semi ";">
            )
          ]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:cafile)
                  op: Equal
                  rhs: {($ VSub_Number "$2")}
                  spids: [70]
                )
              ]
              spids: [70]
            )
          ]
          spids: [-1 67]
        )
      ]
      else_action: [
        (Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (LhsName name:cafile)
              op: Equal
              rhs: {(/opt/chef/embedded/ssl/cert.pem)}
              spids: [76]
            )
          ]
          spids: [76]
        )
      ]
      spids: [73 79]
    )
    (C {(echo)} 
      {
        (DQ ("Copying SSL certificate for ") ($ VSub_Name "$target") (" into store ") 
          ($ VSub_Name "$cafile")
        )
      }
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (DBracket expr:(BoolUnary op_id:BoolUnary_f child:{(./proxy_setup.sh)}))
              terminator: <Op_Semi ";">
            )
          ]
          action: [(C {(.)} {(./proxy_setup.sh)})]
          spids: [-1 103]
        )
      ]
      spids: [-1 110]
    )
    (C {(apt-get)} {(install)} {(proxytunnel)})
    (Sentence
      child: 
        (C {(proxytunnel)} {(-p)} 
          {
            (BracedVarSub
              token: <VSub_Name https_proxy>
              suffix_op: (StringUnary op_id:VOp1_DPound arg_word:{("*:") (Lit_Slash /) (Lit_Slash /)})
              spids: [124 130]
            )
          } {(-d)} {($ VSub_Name "$target") (Lit_Other ":") (443)} {(-a)} {(${ VSub_Name port)}
        )
      terminator: <Op_Amp "&">
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pid) op:Equal rhs:{($ VSub_Bang "$!")} spids:[146])]
      spids: [146]
    )
    (C {(trap)} {(SQ <"kill ${pid}">)} {(HUP)} {(EXIT)} {(INT)})
    (C {(sleep)} {(1)})
    (C {(cp)} {(-H)} {(DQ (${ VSub_Name cafile))} {(DQ (${ VSub_Name cafile) (.old))})
    (Pipeline
      children: [
        (C {(echo)})
        (C {(openssl)} {(s_client)} {(-connect)} {(127.0.0.1) (Lit_Other ":") ($ VSub_Name "$port")} 
          {(-showcerts)}
        )
        (SimpleCommand
          words: [{(sed)} {(-n)} {(SQ <"/-----BEGIN CERTIFICATE-----/,/-----END CERTIFICATE-----/p">)}]
          redirects: [
            (Redir
              op_id: Redir_DGreat
              fd: -1
              arg_word: {(DQ (${ VSub_Name cafile))}
              spids: [211]
            )
          ]
        )
      ]
      negated: False
    )
  ]
)