(CommandList
  children: [
    (C {(export)} {(Lit_VarLike "CURL=") (SQ <curl>)})
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (C {(Lit_Other "[")} {(-n)} {(DQ ($ VSub_Name "$PROXY"))} {(Lit_Other "]")})
              terminator: <Op_Semi ";">
            )
          ]
          action: [
            (C {(echo)} {(DQ ("Setting up and testing proxy"))})
            (C {(export)} 
              {(Lit_VarLike "http_proxy=") (http) (Lit_Other ":") (//) (${ VSub_Name PROXY)}
            )
            (C {(export)} 
              {(Lit_VarLike "https_proxy=") (https) (Lit_Other ":") (//) (${ VSub_Name PROXY)}
            )
            (C {(export)} {(Lit_VarLike "GIT_SSL_NO_VERIFY=") (true)})
            (C {(export)} {(Lit_VarLike "CURL=") (DQ ("curl -k -x http://") (${ VSub_Name PROXY))})
            (SimpleCommand
              words: [
                {($ VSub_Name "$CURL")}
                {(-s)}
                {(--connect-timeout)}
                {(1)}
                {(http) (Lit_Other ":") (//www.ubuntu.com)}
              ]
              redirects: [(Redir op_id:Redir_Great fd:-1 arg_word:{(/dev/null)} spids:[134])]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolBinary
                              op_id: BoolBinary_GlobNEqual
                              left: {($ VSub_QMark "$?")}
                              right: {(0)}
                            )
                        )
                      terminator: <Op_Semi ";">
                    )
                  ]
                  action: [
                    (C {(echo)} {(DQ ("Error: proxy ") ($ VSub_Name "$PROXY") (" not responding"))})
                    (C {(exit)} {(1)})
                  ]
                  spids: [-1 152]
                )
              ]
              else_action: [(C {(echo)} {(DQ ("Using a proxy at ") ($ VSub_Name "$PROXY"))})]
              spids: [169 180]
            )
          ]
          spids: [-1 58]
        )
      ]
      else_action: [
        (C {(echo)} 
          {
            (DQ (EscapedLiteralPart token:<Lit_EscapedChar "\\$">) 
              ("PROXY not defined, not defining ") (EscapedLiteralPart token:<Lit_EscapedChar "\\$">) ("http_proxy and ") 
              (EscapedLiteralPart token:<Lit_EscapedChar "\\$">) (https_proxy)
            )
          }
        )
      ]
      spids: [182 196]
    )
  ]
)