(CommandList
  children: [
    (C {(set)} {(-o)} {(errexit)})
    (C {(set)} {(-o)} {(nounset)})
    (C {(set)} {(-o)} {(pipefail)})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:KUBE_ROOT)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: 
                  (CommandList
                    children: [
                      (AndOr
                        children: [
                          (C {(cd)} 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [(C {(dirname)} {(DQ (${ VSub_Name BASH_SOURCE))})]
                                  )
                                left_token: <Left_CommandSub '$('>
                                spids: [71 79]
                              ) (/..)
                            }
                          )
                          (C {(pwd)})
                        ]
                        op_id: Op_DAmp
                      )
                    ]
                  )
                left_token: <Left_CommandSub '$('>
                spids: [68 85]
              )
            }
          spids: [67]
        )
      ]
      spids: [67]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:DEFAULT_KUBECONFIG)
          op: Equal
          rhs: 
            {
              (DQ 
                (BracedVarSub
                  token: <VSub_Name HOME>
                  suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(.)})
                  spids: [90 94]
                ) (/.kube/config)
              )
            }
          spids: [88]
        )
      ]
      spids: [88]
    )
    (C {(source)} {(DQ (${ VSub_Name KUBE_ROOT) (/hack/lib/util.sh))})
    (C {(source)} {(DQ (${ VSub_Name KUBE_ROOT) (/cluster/lib/logging.sh))})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:KUBE_RELEASE_VERSION_REGEX)
          op: Equal
          rhs: 
            {
              (DQ ('^v(0|[1-9][0-9]*)') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) 
                ('.(0|[1-9][0-9]*)') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('.(0|[1-9][0-9]*)(-([a-zA-Z0-9]+)') 
                (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('.(0|[1-9][0-9]*))?') (Lit_Other '$')
              )
            }
          spids: [129]
        )
      ]
      spids: [129]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:KUBE_RELEASE_VERSION_DASHED_REGEX)
          op: Equal
          rhs: 
            {
              (DQ 
                (
'v(0|[1-9][0-9]*)-(0|[1-9][0-9]*)-(0|[1-9][0-9]*)(-([a-zA-Z0-9]+)-(0|[1-9][0-9]*))?'
                )
              )
            }
          spids: [141]
        )
      ]
      spids: [141]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:KUBE_CI_VERSION_REGEX)
          op: Equal
          rhs: 
            {
              (DQ ('^v(0|[1-9][0-9]*)') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) 
                ('.(0|[1-9][0-9]*)') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('.(0|[1-9][0-9]*)-([a-zA-Z0-9]+)') 
                (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('.(0|[1-9][0-9]*)(') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('.(0|[1-9][0-9]*)') 
                (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('+[-0-9a-z]*)?') (Lit_Other '$')
              )
            }
          spids: [159]
        )
      ]
      spids: [159]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:KUBE_CI_VERSION_DASHED_REGEX)
          op: Equal
          rhs: 
            {
              (DQ 
                (
'^v(0|[1-9][0-9]*)-(0|[1-9][0-9]*)-(0|[1-9][0-9]*)-([a-zA-Z0-9]+)-(0|[1-9][0-9]*)(-(0|[1-9][0-9]*)'
                ) (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('+[-0-9a-z]*)?')
              )
            }
          spids: [175]
        )
      ]
      spids: [175]
    )
    (FuncDef
      name: create-kubeconfig
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBECONFIG)
                  op: Equal
                  rhs: 
                    {
                      (BracedVarSub
                        token: <VSub_Name KUBECONFIG>
                        suffix_op: 
                          (StringUnary
                            op_id: VTest_ColonHyphen
                            arg_word: {($ VSub_Name '$DEFAULT_KUBECONFIG')}
                          )
                        spids: [253 257]
                      )
                    }
                  spids: [252]
                )
              ]
              spids: [252]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:kubectl)
                  op: Equal
                  rhs: {(DQ (${ VSub_Name KUBE_ROOT) (/cluster/kubectl.sh))}
                  spids: [262]
                )
              ]
              spids: [260]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:SECONDARY_KUBECONFIG)
                  op: Equal
                  rhs: 
                    {
                      (BracedVarSub
                        token: <VSub_Name SECONDARY_KUBECONFIG>
                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                        spids: [272 275]
                      )
                    }
                  spids: [271]
                )
              ]
              spids: [271]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:OVERRIDE_CONTEXT)
                  op: Equal
                  rhs: 
                    {
                      (BracedVarSub
                        token: <VSub_Name OVERRIDE_CONTEXT>
                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                        spids: [279 282]
                      )
                    }
                  spids: [278]
                )
              ]
              spids: [278]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolBinary
                              op_id: BoolBinary_GlobNEqual
                              left: {(DQ ($ VSub_Name '$OVERRIDE_CONTEXT'))}
                              right: {(DQ )}
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:CONTEXT)
                          op: Equal
                          rhs: {($ VSub_Name '$OVERRIDE_CONTEXT')}
                          spids: [304]
                        )
                      ]
                      spids: [304]
                    )
                  ]
                  spids: [16777215 301]
                )
              ]
              spids: [16777215 308]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:OLD_IFS)
                  op: Equal
                  rhs: {($ VSub_Name '$IFS')}
                  spids: [316]
                )
              ]
              spids: [316]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:IFS) op:Equal rhs:{(SQ <':'>)} spids:[320])]
              spids: [320]
            )
            (ForEach
              iter_name: cfg
              iter_words: [{(${ VSub_Name KUBECONFIG)}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (DBracket
                                  expr: 
                                    (LogicalNot
                                      child: 
                                        (BoolUnary
                                          op_id: BoolUnary_e
                                          child: {(DQ (${ VSub_Name cfg))}
                                        )
                                    )
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(mkdir)} {(-p)} 
                              {
                                (DQ 
                                  (CommandSubPart
                                    command_list: 
                                      (CommandList
                                        children: [(C {(dirname)} {(DQ (${ VSub_Name cfg))})]
                                      )
                                    left_token: <Left_CommandSub '$('>
                                    spids: [366 374]
                                  )
                                )
                              }
                            )
                            (C {(touch)} {(DQ (${ VSub_Name cfg))})
                          ]
                          spids: [16777215 358]
                        )
                      ]
                      spids: [16777215 387]
                    )
                  ]
                  spids: [338 390]
                )
              spids: [331 336]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:IFS)
                  op: Equal
                  rhs: {($ VSub_Name '$OLD_IFS')}
                  spids: [393]
                )
              ]
              spids: [393]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:cluster_args)
                  op: Equal
                  rhs: 
                    {
                      (ArrayLiteralPart
                        words: [
                          {
                            (DQ ('--server=') 
                              (BracedVarSub
                                token: <VSub_Name KUBE_SERVER>
                                suffix_op: 
                                  (StringUnary
                                    op_id: VTest_ColonHyphen
                                    arg_word: 
                                      {('https:') (Lit_Slash /) (Lit_Slash /) 
                                        (${ VSub_Name KUBE_MASTER_IP)
                                      }
                                  )
                                spids: [406 415]
                              )
                            )
                          }
                        ]
                      )
                    }
                  spids: [400]
                )
              ]
              spids: [398]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolUnary
                              op_id: BoolUnary_z
                              child: 
                                {
                                  (DQ 
                                    (BracedVarSub
                                      token: <VSub_Name CA_CERT>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                      spids: [429 432]
                                    )
                                  )
                                }
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:cluster_args)
                          op: PlusEqual
                          rhs: {(ArrayLiteralPart words:[{(DQ ('--insecure-skip-tls-verify=true'))}])}
                          spids: [441]
                        )
                      ]
                      spids: [441]
                    )
                  ]
                  spids: [16777215 438]
                )
              ]
              else_action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:cluster_args)
                      op: PlusEqual
                      rhs: 
                        {
                          (ArrayLiteralPart
                            words: [
                              {(DQ ('--certificate-authority=') (${ VSub_Name CA_CERT))}
                              {(DQ ('--embed-certs=true'))}
                            ]
                          )
                        }
                      spids: [452]
                    )
                  ]
                  spids: [452]
                )
              ]
              spids: [449 472]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:user_args)
                  op: Equal
                  rhs: {(ArrayLiteralPart)}
                  spids: [478]
                )
              ]
              spids: [476]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (LogicalNot
                              child: 
                                (BoolUnary
                                  op_id: BoolUnary_z
                                  child: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          token: <VSub_Name KUBE_BEARER_TOKEN>
                                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                          spids: [492 495]
                                        )
                                      )
                                    }
                                )
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:user_args)
                          op: PlusEqual
                          rhs: 
                            {
                              (ArrayLiteralPart
                                words: [{(DQ ('--token=') (${ VSub_Name KUBE_BEARER_TOKEN))}]
                              )
                            }
                          spids: [504]
                        )
                      ]
                      spids: [504]
                    )
                  ]
                  spids: [16777215 501]
                )
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (LogicalAnd
                              left: 
                                (LogicalNot
                                  child: 
                                    (BoolUnary
                                      op_id: BoolUnary_z
                                      child: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              token: <VSub_Name KUBE_USER>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                              spids: [528 531]
                                            )
                                          )
                                        }
                                    )
                                )
                              right: 
                                (LogicalNot
                                  child: 
                                    (BoolUnary
                                      op_id: BoolUnary_z
                                      child: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              token: <VSub_Name KUBE_PASSWORD>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                              spids: [541 544]
                                            )
                                          )
                                        }
                                    )
                                )
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:user_args)
                          op: PlusEqual
                          rhs: 
                            {
                              (ArrayLiteralPart
                                words: [
                                  {(DQ ('--username=') (${ VSub_Name KUBE_USER))}
                                  {(DQ ('--password=') (${ VSub_Name KUBE_PASSWORD))}
                                ]
                              )
                            }
                          spids: [553]
                        )
                      ]
                      spids: [553]
                    )
                  ]
                  spids: [519 550]
                )
              ]
              spids: [16777215 576]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (LogicalAnd
                              left: 
                                (LogicalNot
                                  child: 
                                    (BoolUnary
                                      op_id: BoolUnary_z
                                      child: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              token: <VSub_Name KUBE_CERT>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                              spids: [588 591]
                                            )
                                          )
                                        }
                                    )
                                )
                              right: 
                                (LogicalNot
                                  child: 
                                    (BoolUnary
                                      op_id: BoolUnary_z
                                      child: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              token: <VSub_Name KUBE_KEY>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                              spids: [601 604]
                                            )
                                          )
                                        }
                                    )
                                )
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:user_args)
                          op: PlusEqual
                          rhs: 
                            {
                              (ArrayLiteralPart
                                words: [
                                  {(DQ ('--client-certificate=') (${ VSub_Name KUBE_CERT))}
                                  {(DQ ('--client-key=') (${ VSub_Name KUBE_KEY))}
                                  {(DQ ('--embed-certs=true'))}
                                ]
                              )
                            }
                          spids: [613]
                        )
                      ]
                      spids: [613]
                    )
                  ]
                  spids: [16777215 610]
                )
              ]
              spids: [16777215 641]
            )
            (SimpleCommand
              words: [
                {(DQ (${ VSub_Name kubectl))}
                {(config)}
                {(set-cluster)}
                {(DQ (${ VSub_Name CONTEXT))}
                {
                  (DQ 
                    (BracedVarSub
                      token: <VSub_Name cluster_args>
                      bracket_op: (WholeArray op_id:Lit_At)
                      spids: [669 674]
                    )
                  )
                }
              ]
              more_env: [(env_pair name:KUBECONFIG val:{(DQ (${ VSub_Name KUBECONFIG))} spids:[645])]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolUnary
                              op_id: BoolUnary_n
                              child: 
                                {
                                  (DQ 
                                    (BracedVarSub
                                      token: <VSub_Name user_args>
                                      bracket_op: (WholeArray op_id:Lit_At)
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                      spids: [685 691]
                                    )
                                  )
                                }
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [
                        {(DQ (${ VSub_Name kubectl))}
                        {(config)}
                        {(set-credentials)}
                        {(DQ (${ VSub_Name CONTEXT))}
                        {
                          (DQ 
                            (BracedVarSub
                              token: <VSub_Name user_args>
                              bracket_op: (WholeArray op_id:Lit_At)
                              spids: [724 729]
                            )
                          )
                        }
                      ]
                      more_env: [
                        (env_pair
                          name: KUBECONFIG
                          val: {(DQ (${ VSub_Name KUBECONFIG))}
                          spids: [700]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 697]
                )
              ]
              spids: [16777215 733]
            )
            (SimpleCommand
              words: [
                {(DQ (${ VSub_Name kubectl))}
                {(config)}
                {(set-context)}
                {(DQ (${ VSub_Name CONTEXT))}
                {(--cluster) (Lit_Other '=') (DQ (${ VSub_Name CONTEXT))}
                {(--user) (Lit_Other '=') (DQ (${ VSub_Name CONTEXT))}
              ]
              more_env: [(env_pair name:KUBECONFIG val:{(DQ (${ VSub_Name KUBECONFIG))} spids:[736])]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolBinary
                              op_id: BoolBinary_GlobNEqual
                              left: {(DQ (${ VSub_Name SECONDARY_KUBECONFIG))}
                              right: {(DQ (true))}
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [
                        {(DQ (${ VSub_Name kubectl))}
                        {(config)}
                        {(use-context)}
                        {(DQ (${ VSub_Name CONTEXT))}
                        {(--cluster) (Lit_Other '=') (DQ (${ VSub_Name CONTEXT))}
                      ]
                      more_env: [
                        (env_pair
                          name: KUBECONFIG
                          val: {(DQ (${ VSub_Name KUBECONFIG))}
                          spids: [798]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 795]
                )
              ]
              spids: [16777215 830]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (LogicalAnd
                              left: 
                                (LogicalNot
                                  child: 
                                    (BoolUnary
                                      op_id: BoolUnary_z
                                      child: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              token: <VSub_Name KUBE_BEARER_TOKEN>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                              spids: [855 858]
                                            )
                                          )
                                        }
                                    )
                                )
                              right: 
                                (LogicalAnd
                                  left: 
                                    (LogicalNot
                                      child: 
                                        (BoolUnary
                                          op_id: BoolUnary_z
                                          child: 
                                            {
                                              (DQ 
                                                (BracedVarSub
                                                  token: <VSub_Name KUBE_USER>
                                                  suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                                  spids: [868 871]
                                                )
                                              )
                                            }
                                        )
                                    )
                                  right: 
                                    (LogicalNot
                                      child: 
                                        (BoolUnary
                                          op_id: BoolUnary_z
                                          child: 
                                            {
                                              (DQ 
                                                (BracedVarSub
                                                  token: <VSub_Name KUBE_PASSWORD>
                                                  suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                                  spids: [881 884]
                                                )
                                              )
                                            }
                                        )
                                    )
                                )
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [
                        {(DQ (${ VSub_Name kubectl))}
                        {(config)}
                        {(set-credentials)}
                        {(DQ (${ VSub_Name CONTEXT) (-basic-auth))}
                        {(DQ ('--username=') (${ VSub_Name KUBE_USER))}
                        {(DQ ('--password=') (${ VSub_Name KUBE_PASSWORD))}
                      ]
                      more_env: [
                        (env_pair
                          name: KUBECONFIG
                          val: {(DQ (${ VSub_Name KUBECONFIG))}
                          spids: [893]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 890]
                )
              ]
              spids: [16777215 932]
            )
            (C {(echo)} 
              {(DQ ('Wrote config for ') (${ VSub_Name CONTEXT) (' to ') (${ VSub_Name KUBECONFIG))}
            )
          ]
          spids: [249]
        )
      spids: [243 248]
    )
    (FuncDef
      name: clear-kubeconfig
      body: 
        (BraceGroup
          children: [
            (C {(export)} 
              {(Lit_VarLike 'KUBECONFIG=') 
                (BracedVarSub
                  token: <VSub_Name KUBECONFIG>
                  suffix_op: 
                    (StringUnary
                      op_id: VTest_ColonHyphen
                      arg_word: {($ VSub_Name '$DEFAULT_KUBECONFIG')}
                    )
                  spids: [982 986]
                )
              }
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:OVERRIDE_CONTEXT)
                  op: Equal
                  rhs: 
                    {
                      (BracedVarSub
                        token: <VSub_Name OVERRIDE_CONTEXT>
                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                        spids: [990 993]
                      )
                    }
                  spids: [989]
                )
              ]
              spids: [989]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolBinary
                              op_id: BoolBinary_GlobNEqual
                              left: {(DQ ($ VSub_Name '$OVERRIDE_CONTEXT'))}
                              right: {(DQ )}
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:CONTEXT)
                          op: Equal
                          rhs: {($ VSub_Name '$OVERRIDE_CONTEXT')}
                          spids: [1015]
                        )
                      ]
                      spids: [1015]
                    )
                  ]
                  spids: [16777215 1012]
                )
              ]
              spids: [16777215 1019]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:kubectl)
                  op: Equal
                  rhs: {(DQ (${ VSub_Name KUBE_ROOT) (/cluster/kubectl.sh))}
                  spids: [1025]
                )
              ]
              spids: [1023]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:cc)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(DQ (${ VSub_Name kubectl))} {(config)} {(view)} {(-o)} 
                                {(Lit_VarLike 'jsonpath=') (SQ <'{.current-context}'>)}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [1041 1058]
                      )
                    }
                  spids: [1040]
                )
              ]
              spids: [1038]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolBinary
                              op_id: BoolBinary_GlobDEqual
                              left: {(DQ (${ VSub_Name cc))}
                              right: {(DQ (${ VSub_Name CONTEXT))}
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(DQ (${ VSub_Name kubectl))} {(config)} {(unset)} {(current-context)})]
                  spids: [16777215 1082]
                )
              ]
              spids: [16777215 1098]
            )
            (C {(DQ (${ VSub_Name kubectl))} {(config)} {(unset)} 
              {(DQ (clusters.) (${ VSub_Name CONTEXT))}
            )
            (C {(DQ (${ VSub_Name kubectl))} {(config)} {(unset)} {(DQ (users.) (${ VSub_Name CONTEXT))})
            (C {(DQ (${ VSub_Name kubectl))} {(config)} {(unset)} 
              {(DQ (users.) (${ VSub_Name CONTEXT) (-basic-auth))}
            )
            (C {(DQ (${ VSub_Name kubectl))} {(config)} {(unset)} 
              {(DQ (contexts.) (${ VSub_Name CONTEXT))}
            )
            (C {(echo)} 
              {
                (DQ ('Cleared config for ') (${ VSub_Name CONTEXT) (' from ') (${ VSub_Name KUBECONFIG))
              }
            )
          ]
          spids: [976]
        )
      spids: [970 975]
    )
    (FuncDef
      name: create-kubeconfig-for-federation
      body: 
        (BraceGroup
          children: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolBinary
                              op_id: BoolBinary_GlobDEqual
                              left: 
                                {
                                  (DQ 
                                    (BracedVarSub
                                      token: <VSub_Name FEDERATION>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                      spids: [1211 1214]
                                    )
                                  )
                                }
                              right: {(DQ (true))}
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(echo)} {(DQ ('creating kubeconfig for federation secret'))})
                    (Assignment
                      keyword: Assign_Local
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:kubectl)
                          op: Equal
                          rhs: {(DQ (${ VSub_Name KUBE_ROOT) (/cluster/kubectl.sh))}
                          spids: [1238]
                        )
                      ]
                      spids: [1236]
                    )
                    (Assignment
                      keyword: Assign_Local
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:cc)
                          op: Equal
                          rhs: 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (C {(DQ (${ VSub_Name kubectl))} {(config)} {(view)} {(-o)} 
                                        {(Lit_VarLike 'jsonpath=') (SQ <'{.current-context}'>)}
                                      )
                                    ]
                                  )
                                left_token: <Left_CommandSub '$('>
                                spids: [1250 1267]
                              )
                            }
                          spids: [1249]
                        )
                      ]
                      spids: [1247]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:KUBECONFIG_DIR)
                          op: Equal
                          rhs: 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (C {(dirname)} 
                                        {
                                          (BracedVarSub
                                            token: <VSub_Name KUBECONFIG>
                                            suffix_op: 
                                              (StringUnary
                                                op_id: VTest_ColonHyphen
                                                arg_word: {($ VSub_Name '$DEFAULT_KUBECONFIG')}
                                              )
                                            spids: [1274 1278]
                                          )
                                        }
                                      )
                                    ]
                                  )
                                left_token: <Left_CommandSub '$('>
                                spids: [1271 1279]
                              )
                            }
                          spids: [1270]
                        )
                      ]
                      spids: [1270]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:KUBECONFIG_PATH)
                          op: Equal
                          rhs: 
                            {
                              (DQ (${ VSub_Name KUBECONFIG_DIR) (/federation/kubernetes-apiserver/) 
                                (${ VSub_Name cc)
                              )
                            }
                          spids: [1282]
                        )
                      ]
                      spids: [1282]
                    )
                    (C {(mkdir)} {(-p)} {(DQ (${ VSub_Name KUBECONFIG_PATH))})
                    (SimpleCommand
                      words: [{(DQ (${ VSub_Name kubectl))} {(config)} {(view)} {(--minify)} {(--flatten)}]
                      redirects: [
                        (Redir
                          op_id: Redir_Great
                          fd: 16777215
                          arg_word: {(DQ (${ VSub_Name KUBECONFIG_PATH) (/kubeconfig))}
                          spids: [1319]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 1226]
                )
              ]
              spids: [16777215 1329]
            )
          ]
          spids: [1203]
        )
      spids: [1197 1202]
    )
    (FuncDef
      name: tear_down_alive_resources
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:kubectl)
                  op: Equal
                  rhs: {(DQ (${ VSub_Name KUBE_ROOT) (/cluster/kubectl.sh))}
                  spids: [1345]
                )
              ]
              spids: [1343]
            )
            (AndOr
              children: [
                (C {(DQ (${ VSub_Name kubectl))} {(delete)} {(deployments)} {(--all)})
                (C {(true)})
              ]
              op_id: Op_DPipe
            )
            (AndOr
              children: [(C {(DQ (${ VSub_Name kubectl))} {(delete)} {(rc)} {(--all)}) (C {(true)})]
              op_id: Op_DPipe
            )
            (AndOr
              children: [(C {(DQ (${ VSub_Name kubectl))} {(delete)} {(pods)} {(--all)}) (C {(true)})]
              op_id: Op_DPipe
            )
            (AndOr
              children: [(C {(DQ (${ VSub_Name kubectl))} {(delete)} {(svc)} {(--all)}) (C {(true)})]
              op_id: Op_DPipe
            )
            (AndOr
              children: [(C {(DQ (${ VSub_Name kubectl))} {(delete)} {(pvc)} {(--all)}) (C {(true)})]
              op_id: Op_DPipe
            )
          ]
          spids: [1340]
        )
      spids: [1334 1339]
    )
    (FuncDef
      name: get-kubeconfig-basicauth
      body: 
        (BraceGroup
          children: [
            (C {(export)} 
              {(Lit_VarLike 'KUBECONFIG=') 
                (BracedVarSub
                  token: <VSub_Name KUBECONFIG>
                  suffix_op: 
                    (StringUnary
                      op_id: VTest_ColonHyphen
                      arg_word: {($ VSub_Name '$DEFAULT_KUBECONFIG')}
                    )
                  spids: [1486 1490]
                )
              }
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:cc)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(DQ (${ VSub_Name KUBE_ROOT) (/cluster/kubectl.sh))} {(config)} 
                                {(view)} {(-o)} {(Lit_VarLike 'jsonpath=') (DQ ('{.current-context}'))}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [1497 1515]
                      )
                    }
                  spids: [1496]
                )
              ]
              spids: [1494]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (LogicalNot
                              child: 
                                (BoolUnary
                                  op_id: BoolUnary_z
                                  child: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          token: <VSub_Name KUBE_CONTEXT>
                                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                          spids: [1527 1530]
                                        )
                                      )
                                    }
                                )
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:cc)
                          op: Equal
                          rhs: {(DQ (${ VSub_Name KUBE_CONTEXT))}
                          spids: [1539]
                        )
                      ]
                      spids: [1539]
                    )
                  ]
                  spids: [16777215 1536]
                )
              ]
              spids: [16777215 1547]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:user)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(DQ (${ VSub_Name KUBE_ROOT) (/cluster/kubectl.sh))} {(config)} 
                                {(view)} {(-o)} 
                                {(Lit_VarLike 'jsonpath=') 
                                  (DQ ('{.contexts[?(@.name == ') 
                                    (EscapedLiteralPart
                                      token: <Lit_EscapedChar '\\"'>
                                    ) (${ VSub_Name cc) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (')].context.user}')
                                  )
                                }
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [1553 1577]
                      )
                    }
                  spids: [1552]
                )
              ]
              spids: [1550]
            )
            (C {(get-kubeconfig-user-basicauth)} {(DQ (${ VSub_Name user))})
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (LogicalOr
                              left: 
                                (BoolUnary
                                  op_id: BoolUnary_z
                                  child: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          token: <VSub_Name KUBE_USER>
                                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                          spids: [1597 1600]
                                        )
                                      )
                                    }
                                )
                              right: 
                                (BoolUnary
                                  op_id: BoolUnary_z
                                  child: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          token: <VSub_Name KUBE_PASSWORD>
                                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                          spids: [1608 1611]
                                        )
                                      )
                                    }
                                )
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(get-kubeconfig-user-basicauth)} {(DQ (${ VSub_Name user) (-basic-auth))})
                  ]
                  spids: [16777215 1617]
                )
              ]
              spids: [16777215 1650]
            )
          ]
          spids: [1480]
        )
      spids: [1474 1479]
    )
    (FuncDef
      name: get-kubeconfig-user-basicauth
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBE_USER)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(DQ (${ VSub_Name KUBE_ROOT) (/cluster/kubectl.sh))} {(config)} 
                                {(view)} {(-o)} 
                                {(Lit_VarLike 'jsonpath=') 
                                  (DQ ('{.users[?(@.name == ') 
                                    (EscapedLiteralPart
                                      token: <Lit_EscapedChar '\\"'>
                                    ) ($ VSub_Number '$1') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (')].user.username}')
                                  )
                                }
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [1695 1717]
                      )
                    }
                  spids: [1694]
                )
              ]
              spids: [1694]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBE_PASSWORD)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(DQ (${ VSub_Name KUBE_ROOT) (/cluster/kubectl.sh))} {(config)} 
                                {(view)} {(-o)} 
                                {(Lit_VarLike 'jsonpath=') 
                                  (DQ ('{.users[?(@.name == ') 
                                    (EscapedLiteralPart
                                      token: <Lit_EscapedChar '\\"'>
                                    ) ($ VSub_Number '$1') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (')].user.password}')
                                  )
                                }
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [1721 1743]
                      )
                    }
                  spids: [1720]
                )
              ]
              spids: [1720]
            )
          ]
          spids: [1691]
        )
      spids: [1685 1690]
    )
    (FuncDef
      name: gen-kube-basicauth
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:KUBE_USER) op:Equal rhs:{(admin)} spids:[1770])]
              spids: [1770]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBE_PASSWORD)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(python)} {(-c)} 
                                {
                                  (SQ 
                                    <
'import string,random; print("".join(random.SystemRandom().choice(string.ascii_letters + string.digits) for _ in range(16)))'
                                    >
                                  )
                                }
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [1775 1783]
                      )
                    }
                  spids: [1774]
                )
              ]
              spids: [1774]
            )
          ]
          spids: [1767]
        )
      spids: [1761 1766]
    )
    (FuncDef
      name: get-kubeconfig-bearertoken
      body: 
        (BraceGroup
          children: [
            (C {(export)} 
              {(Lit_VarLike 'KUBECONFIG=') 
                (BracedVarSub
                  token: <VSub_Name KUBECONFIG>
                  suffix_op: 
                    (StringUnary
                      op_id: VTest_ColonHyphen
                      arg_word: {($ VSub_Name '$DEFAULT_KUBECONFIG')}
                    )
                  spids: [1830 1834]
                )
              }
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:cc)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(DQ (${ VSub_Name KUBE_ROOT) (/cluster/kubectl.sh))} {(config)} 
                                {(view)} {(-o)} {(Lit_VarLike 'jsonpath=') (DQ ('{.current-context}'))}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [1841 1859]
                      )
                    }
                  spids: [1840]
                )
              ]
              spids: [1838]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (LogicalNot
                              child: 
                                (BoolUnary
                                  op_id: BoolUnary_z
                                  child: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          token: <VSub_Name KUBE_CONTEXT>
                                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                          spids: [1871 1874]
                                        )
                                      )
                                    }
                                )
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:cc)
                          op: Equal
                          rhs: {(DQ (${ VSub_Name KUBE_CONTEXT))}
                          spids: [1883]
                        )
                      ]
                      spids: [1883]
                    )
                  ]
                  spids: [16777215 1880]
                )
              ]
              spids: [16777215 1891]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:user)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(DQ (${ VSub_Name KUBE_ROOT) (/cluster/kubectl.sh))} {(config)} 
                                {(view)} {(-o)} 
                                {(Lit_VarLike 'jsonpath=') 
                                  (DQ ('{.contexts[?(@.name == ') 
                                    (EscapedLiteralPart
                                      token: <Lit_EscapedChar '\\"'>
                                    ) (${ VSub_Name cc) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (')].context.user}')
                                  )
                                }
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [1897 1921]
                      )
                    }
                  spids: [1896]
                )
              ]
              spids: [1894]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBE_BEARER_TOKEN)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(DQ (${ VSub_Name KUBE_ROOT) (/cluster/kubectl.sh))} {(config)} 
                                {(view)} {(-o)} 
                                {(Lit_VarLike 'jsonpath=') 
                                  (DQ ('{.users[?(@.name == ') 
                                    (EscapedLiteralPart
                                      token: <Lit_EscapedChar '\\"'>
                                    ) (${ VSub_Name user) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (')].user.token}')
                                  )
                                }
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [1925 1949]
                      )
                    }
                  spids: [1924]
                )
              ]
              spids: [1924]
            )
          ]
          spids: [1824]
        )
      spids: [1818 1823]
    )
    (FuncDef
      name: gen-kube-bearertoken
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBE_BEARER_TOKEN)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (SimpleCommand
                                    words: [
                                      {(dd)}
                                      {(Lit_VarLike 'if=') (/dev/urandom)}
                                      {(Lit_VarLike 'bs=') (128)}
                                      {(Lit_VarLike 'count=') (1)}
                                    ]
                                    redirects: [
                                      (Redir
                                        op_id: Redir_Great
                                        fd: 2
                                        arg_word: {(/dev/null)}
                                        spids: [1988]
                                      )
                                    ]
                                  )
                                  (C {(base64)})
                                  (C {(tr)} {(-d)} {(DQ ('=+/'))})
                                  (SimpleCommand
                                    words: [
                                      {(dd)}
                                      {(Lit_VarLike 'bs=') (32)}
                                      {(Lit_VarLike 'count=') (1)}
                                    ]
                                    redirects: [
                                      (Redir
                                        op_id: Redir_Great
                                        fd: 2
                                        arg_word: {(/dev/null)}
                                        spids: [2015]
                                      )
                                    ]
                                  )
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [1976 2017]
                      )
                    }
                  spids: [1975]
                )
              ]
              spids: [1975]
            )
          ]
          spids: [1972]
        )
      spids: [1966 1971]
    )
    (FuncDef
      name: gen-uid
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBE_UID)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(python)} {(-c)} {(SQ <'import uuid; print(uuid.uuid1().fields[0])'>)})
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [2048 2056]
                      )
                    }
                  spids: [2047]
                )
              ]
              spids: [2047]
            )
          ]
          spids: [2044]
        )
      spids: [2040 2043]
    )
    (FuncDef
      name: load-or-gen-kube-basicauth
      body: 
        (BraceGroup
          children: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (LogicalNot
                              child: 
                                (BoolUnary
                                  op_id: BoolUnary_z
                                  child: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          token: <VSub_Name KUBE_CONTEXT>
                                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                          spids: [2080 2083]
                                        )
                                      )
                                    }
                                )
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(get-kubeconfig-basicauth)})]
                  spids: [16777215 2089]
                )
              ]
              spids: [16777215 2095]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (LogicalOr
                              left: 
                                (BoolUnary
                                  op_id: BoolUnary_z
                                  child: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          token: <VSub_Name KUBE_USER>
                                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                          spids: [2106 2109]
                                        )
                                      )
                                    }
                                )
                              right: 
                                (BoolUnary
                                  op_id: BoolUnary_z
                                  child: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          token: <VSub_Name KUBE_PASSWORD>
                                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                          spids: [2117 2120]
                                        )
                                      )
                                    }
                                )
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(gen-kube-basicauth)})]
                  spids: [16777215 2126]
                )
              ]
              spids: [16777215 2132]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (Pipeline
                          children: [
                            (DBracket
                              expr: 
                                (BoolBinary
                                  op_id: BoolBinary_EqualTilde
                                  left: {(DQ (${ VSub_Name KUBE_USER))}
                                  right: 
                                    {(Lit_Other '^') (Lit_Other '[') (-._) (Lit_Other '@') (a-zA-Z0-9) 
                                      (Lit_Other ']') (Lit_Other '+') (Lit_Other '$')
                                    }
                                )
                            )
                          ]
                          negated: True
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(echo)} {(DQ ('Bad KUBE_USER string.'))}) (C {(exit)} {(1)})]
                  spids: [16777215 2166]
                )
              ]
              spids: [16777215 2181]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (Pipeline
                          children: [
                            (DBracket
                              expr: 
                                (BoolBinary
                                  op_id: BoolBinary_EqualTilde
                                  left: {(DQ (${ VSub_Name KUBE_PASSWORD))}
                                  right: 
                                    {(Lit_Other '^') (Lit_Other '[') (-._) (Lit_Other '@') 
                                      (Lit_Pound '#') (Lit_Other '%') (/a-zA-Z0-9) (Lit_Other ']') (Lit_Other '+') (Lit_Other '$')
                                    }
                                )
                            )
                          ]
                          negated: True
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(echo)} {(DQ ('Bad KUBE_PASSWORD string.'))}) (C {(exit)} {(1)})]
                  spids: [16777215 2212]
                )
              ]
              spids: [16777215 2227]
            )
          ]
          spids: [2068]
        )
      spids: [2062 2067]
    )
    (FuncDef
      name: load-or-gen-kube-bearertoken
      body: 
        (BraceGroup
          children: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (LogicalNot
                              child: 
                                (BoolUnary
                                  op_id: BoolUnary_z
                                  child: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          token: <VSub_Name KUBE_CONTEXT>
                                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                          spids: [2250 2253]
                                        )
                                      )
                                    }
                                )
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(get-kubeconfig-bearertoken)})]
                  spids: [16777215 2259]
                )
              ]
              spids: [16777215 2265]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolUnary
                              op_id: BoolUnary_z
                              child: 
                                {
                                  (DQ 
                                    (BracedVarSub
                                      token: <VSub_Name KUBE_BEARER_TOKEN>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                      spids: [2275 2278]
                                    )
                                  )
                                }
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(gen-kube-bearertoken)})]
                  spids: [16777215 2284]
                )
              ]
              spids: [16777215 2290]
            )
          ]
          spids: [2238]
        )
      spids: [2232 2237]
    )
    (FuncDef
      name: detect-master-from-kubeconfig
      body: 
        (BraceGroup
          children: [
            (C {(export)} 
              {(Lit_VarLike 'KUBECONFIG=') 
                (BracedVarSub
                  token: <VSub_Name KUBECONFIG>
                  suffix_op: 
                    (StringUnary
                      op_id: VTest_ColonHyphen
                      arg_word: {($ VSub_Name '$DEFAULT_KUBECONFIG')}
                    )
                  spids: [2340 2344]
                )
              }
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:cc)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(DQ (${ VSub_Name KUBE_ROOT) (/cluster/kubectl.sh))} {(config)} 
                                {(view)} {(-o)} {(Lit_VarLike 'jsonpath=') (DQ ('{.current-context}'))}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [2351 2369]
                      )
                    }
                  spids: [2350]
                )
              ]
              spids: [2348]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (LogicalNot
                              child: 
                                (BoolUnary
                                  op_id: BoolUnary_z
                                  child: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          token: <VSub_Name KUBE_CONTEXT>
                                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                          spids: [2381 2384]
                                        )
                                      )
                                    }
                                )
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:cc)
                          op: Equal
                          rhs: {(DQ (${ VSub_Name KUBE_CONTEXT))}
                          spids: [2393]
                        )
                      ]
                      spids: [2393]
                    )
                  ]
                  spids: [16777215 2390]
                )
              ]
              spids: [16777215 2401]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:cluster)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(DQ (${ VSub_Name KUBE_ROOT) (/cluster/kubectl.sh))} {(config)} 
                                {(view)} {(-o)} 
                                {(Lit_VarLike 'jsonpath=') 
                                  (DQ ('{.contexts[?(@.name == ') 
                                    (EscapedLiteralPart
                                      token: <Lit_EscapedChar '\\"'>
                                    ) (${ VSub_Name cc) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (')].context.cluster}')
                                  )
                                }
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [2407 2431]
                      )
                    }
                  spids: [2406]
                )
              ]
              spids: [2404]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBE_MASTER_URL)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(DQ (${ VSub_Name KUBE_ROOT) (/cluster/kubectl.sh))} {(config)} 
                                {(view)} {(-o)} 
                                {(Lit_VarLike 'jsonpath=') 
                                  (DQ ('{.clusters[?(@.name == ') 
                                    (EscapedLiteralPart
                                      token: <Lit_EscapedChar '\\"'>
                                    ) (${ VSub_Name cluster) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (')].cluster.server}')
                                  )
                                }
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [2435 2459]
                      )
                    }
                  spids: [2434]
                )
              ]
              spids: [2434]
            )
          ]
          spids: [2334]
        )
      spids: [2328 2333]
    )
    (FuncDef
      name: set_binary_version
      body: 
        (BraceGroup
          children: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolBinary
                              op_id: BoolBinary_EqualTilde
                              left: {(DQ (${ VSub_Number 1))}
                              right: {(DQ (/))}
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(read)} {(-a)} {(path)}]
                      redirects: [
                        (Redir
                          op_id: Redir_TLess
                          fd: 16777215
                          arg_word: {(DQ (${ VSub_Number 1))}
                          spids: [2539]
                        )
                      ]
                      more_env: [(env_pair name:IFS val:{(SQ </>)} spids:[2528])]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (DBracket
                                  expr: 
                                    (BoolBinary
                                      op_id: BoolBinary_GlobDEqual
                                      left: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              token: <VSub_Name path>
                                              bracket_op: 
                                                (ArrayIndex
                                                  expr: (ArithWord w:{(Lit_Digits 0)})
                                                )
                                              spids: [2553 2558]
                                            )
                                          )
                                        }
                                      right: {(DQ (release))}
                                    )
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:KUBE_VERSION)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (C {(gsutil)} {(cat)} 
                                                {
                                                  (DQ ('gs://kubernetes-release/') (${ VSub_Number 1) 
                                                    (.txt)
                                                  )
                                                }
                                              )
                                            ]
                                          )
                                        left_token: <Left_CommandSub '$('>
                                        spids: [2574 2586]
                                      )
                                    }
                                  spids: [2573]
                                )
                              ]
                              spids: [2573]
                            )
                          ]
                          spids: [16777215 2570]
                        )
                      ]
                      else_action: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:KUBE_VERSION)
                              op: Equal
                              rhs: 
                                {
                                  (CommandSubPart
                                    command_list: 
                                      (CommandList
                                        children: [
                                          (C {(gsutil)} {(cat)} 
                                            {
                                              (DQ ('gs://kubernetes-release-dev/') (${ VSub_Number 1) 
                                                (.txt)
                                              )
                                            }
                                          )
                                        ]
                                      )
                                    left_token: <Left_CommandSub '$('>
                                    spids: [2593 2605]
                                  )
                                }
                              spids: [2592]
                            )
                          ]
                          spids: [2592]
                        )
                      ]
                      spids: [2589 2608]
                    )
                  ]
                  spids: [16777215 2525]
                )
              ]
              else_action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:KUBE_VERSION)
                      op: Equal
                      rhs: {(${ VSub_Number 1)}
                      spids: [2614]
                    )
                  ]
                  spids: [2614]
                )
              ]
              spids: [2611 2620]
            )
          ]
          spids: [2503]
        )
      spids: [2497 2502]
    )
    (FuncDef
      name: tars_from_version
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LhsName name:sha1sum) op:Equal rhs:{(DQ )} spids:[2678])]
              spids: [2676]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (SimpleCommand
                          words: [{(which)} {(sha1sum)}]
                          redirects: [
                            (Redir
                              op_id: Redir_Great
                              fd: 16777215
                              arg_word: {(/dev/null)}
                              spids: [2689]
                            )
                            (Redir
                              op_id: Redir_GreatAnd
                              fd: 2
                              arg_word: {(1)}
                              spids: [2692]
                            )
                          ]
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:sha1sum)
                          op: Equal
                          rhs: {(DQ (sha1sum))}
                          spids: [2699]
                        )
                      ]
                      spids: [2699]
                    )
                  ]
                  spids: [16777215 2696]
                )
              ]
              else_action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:sha1sum)
                      op: Equal
                      rhs: {(DQ ('shasum -a1'))}
                      spids: [2708]
                    )
                  ]
                  spids: [2708]
                )
              ]
              spids: [2705 2714]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolUnary
                              op_id: BoolUnary_z
                              child: 
                                {
                                  (DQ 
                                    (BracedVarSub
                                      token: <VSub_Name KUBE_VERSION>
                                      suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(SQ )})
                                      spids: [2725 2728]
                                    )
                                  )
                                }
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(find-release-tars)}) (C {(upload-server-tars)})]
                  spids: [16777215 2734]
                )
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolBinary
                              op_id: BoolBinary_EqualTilde
                              left: {(${ VSub_Name KUBE_VERSION)}
                              right: {(${ VSub_Name KUBE_RELEASE_VERSION_REGEX)}
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:SERVER_BINARY_TAR_URL)
                          op: Equal
                          rhs: 
                            {
                              (DQ ('https://storage.googleapis.com/kubernetes-release/release/') 
                                (${ VSub_Name KUBE_VERSION) (/kubernetes-server-linux-amd64.tar.gz)
                              )
                            }
                          spids: [2763]
                        )
                      ]
                      spids: [2763]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:SALT_TAR_URL)
                          op: Equal
                          rhs: 
                            {
                              (DQ ('https://storage.googleapis.com/kubernetes-release/release/') 
                                (${ VSub_Name KUBE_VERSION) (/kubernetes-salt.tar.gz)
                              )
                            }
                          spids: [2773]
                        )
                      ]
                      spids: [2773]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:KUBE_MANIFESTS_TAR_URL)
                          op: Equal
                          rhs: 
                            {
                              (DQ 
                                (BracedVarSub
                                  token: <VSub_Name SERVER_BINARY_TAR_URL>
                                  suffix_op: 
                                    (PatSub
                                      pat: {(server-linux-amd64)}
                                      replace: {(manifests)}
                                      do_all: False
                                      do_prefix: False
                                      do_suffix: False
                                    )
                                  spids: [2789 2795]
                                )
                              )
                            }
                          spids: [2787]
                        )
                      ]
                      spids: [2787]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:KUBE_MANIFESTS_TAR_HASH)
                          op: Equal
                          rhs: 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (Pipeline
                                        children: [
                                          (C {(curl)} {(${ VSub_Name KUBE_MANIFESTS_TAR_URL)} 
                                            {(--silent)} {(--show-error)}
                                          )
                                          (C {(${ VSub_Name sha1sum)})
                                          (C {(awk)} {(SQ <'{print $1}'>)})
                                        ]
                                        negated: False
                                      )
                                    ]
                                  )
                                left_token: <Left_CommandSub '$('>
                                spids: [2800 2824]
                              )
                            }
                          spids: [2799]
                        )
                      ]
                      spids: [2799]
                    )
                  ]
                  spids: [2743 2760]
                )
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolBinary
                              op_id: BoolBinary_EqualTilde
                              left: {(${ VSub_Name KUBE_VERSION)}
                              right: {(${ VSub_Name KUBE_CI_VERSION_REGEX)}
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:SERVER_BINARY_TAR_URL)
                          op: Equal
                          rhs: 
                            {
                              (DQ ('https://storage.googleapis.com/kubernetes-release-dev/ci/') 
                                (${ VSub_Name KUBE_VERSION) (/kubernetes-server-linux-amd64.tar.gz)
                              )
                            }
                          spids: [2847]
                        )
                      ]
                      spids: [2847]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:SALT_TAR_URL)
                          op: Equal
                          rhs: 
                            {
                              (DQ ('https://storage.googleapis.com/kubernetes-release-dev/ci/') 
                                (${ VSub_Name KUBE_VERSION) (/kubernetes-salt.tar.gz)
                              )
                            }
                          spids: [2857]
                        )
                      ]
                      spids: [2857]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:KUBE_MANIFESTS_TAR_URL)
                          op: Equal
                          rhs: 
                            {
                              (DQ 
                                (BracedVarSub
                                  token: <VSub_Name SERVER_BINARY_TAR_URL>
                                  suffix_op: 
                                    (PatSub
                                      pat: {(server-linux-amd64)}
                                      replace: {(manifests)}
                                      do_all: False
                                      do_prefix: False
                                      do_suffix: False
                                    )
                                  spids: [2873 2879]
                                )
                              )
                            }
                          spids: [2871]
                        )
                      ]
                      spids: [2871]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:KUBE_MANIFESTS_TAR_HASH)
                          op: Equal
                          rhs: 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (Pipeline
                                        children: [
                                          (C {(curl)} {(${ VSub_Name KUBE_MANIFESTS_TAR_URL)} 
                                            {(--silent)} {(--show-error)}
                                          )
                                          (C {(${ VSub_Name sha1sum)})
                                          (C {(awk)} {(SQ <'{print $1}'>)})
                                        ]
                                        negated: False
                                      )
                                    ]
                                  )
                                left_token: <Left_CommandSub '$('>
                                spids: [2884 2908]
                              )
                            }
                          spids: [2883]
                        )
                      ]
                      spids: [2883]
                    )
                  ]
                  spids: [2827 2844]
                )
              ]
              else_action: [
                (SimpleCommand
                  words: [{(echo)} {(DQ ("Version doesn't match regexp"))}]
                  redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(2)} spids:[2920])]
                )
                (C {(exit)} {(1)})
              ]
              spids: [2911 2929]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (Pipeline
                          children: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:SERVER_BINARY_TAR_HASH)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (C {(curl)} {(-Ss)} {(--fail)} 
                                                {(DQ (${ VSub_Name SERVER_BINARY_TAR_URL) (.sha1))}
                                              )
                                            ]
                                          )
                                        left_token: <Left_CommandSub '$('>
                                        spids: [2937 2950]
                                      )
                                    }
                                  spids: [2936]
                                )
                              ]
                              spids: [2936]
                            )
                          ]
                          negated: True
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(echo)} {(DQ ('Failure trying to curl release .sha1'))})]
                  spids: [16777215 2953]
                )
              ]
              spids: [16777215 2963]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (Pipeline
                          children: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:SALT_TAR_HASH)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (C {(curl)} {(-Ss)} {(--fail)} 
                                                {(DQ (${ VSub_Name SALT_TAR_URL) (.sha1))}
                                              )
                                            ]
                                          )
                                        left_token: <Left_CommandSub '$('>
                                        spids: [2971 2984]
                                      )
                                    }
                                  spids: [2970]
                                )
                              ]
                              spids: [2970]
                            )
                          ]
                          negated: True
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(echo)} {(DQ ('Failure trying to curl Salt tar .sha1'))})]
                  spids: [16777215 2987]
                )
              ]
              spids: [16777215 2997]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (Pipeline
                          children: [
                            (SimpleCommand
                              words: [
                                {(curl)}
                                {(-Ss)}
                                {(--head)}
                                {(DQ (${ VSub_Name SERVER_BINARY_TAR_URL))}
                              ]
                              redirects: [
                                (Redir
                                  op_id: Redir_GreatAnd
                                  fd: 16777215
                                  arg_word: {(/dev/null)}
                                  spids: [3017]
                                )
                              ]
                            )
                          ]
                          negated: True
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [
                        {(echo)}
                        {(DQ ("Can't find release at ") (${ VSub_Name SERVER_BINARY_TAR_URL))}
                      ]
                      redirects: [
                        (Redir
                          op_id: Redir_GreatAnd
                          fd: 16777215
                          arg_word: {(2)}
                          spids: [3033]
                        )
                      ]
                    )
                    (C {(exit)} {(1)})
                  ]
                  spids: [16777215 3021]
                )
              ]
              spids: [16777215 3042]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (Pipeline
                          children: [
                            (SimpleCommand
                              words: [{(curl)} {(-Ss)} {(--head)} {(DQ (${ VSub_Name SALT_TAR_URL))}]
                              redirects: [
                                (Redir
                                  op_id: Redir_GreatAnd
                                  fd: 16777215
                                  arg_word: {(/dev/null)}
                                  spids: [3061]
                                )
                              ]
                            )
                          ]
                          negated: True
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(echo)} {(DQ ("Can't find Salt tar at ") (${ VSub_Name SALT_TAR_URL))}]
                      redirects: [
                        (Redir
                          op_id: Redir_GreatAnd
                          fd: 16777215
                          arg_word: {(2)}
                          spids: [3077]
                        )
                      ]
                    )
                    (C {(exit)} {(1)})
                  ]
                  spids: [16777215 3065]
                )
              ]
              spids: [16777215 3086]
            )
          ]
          spids: [2673]
        )
      spids: [2667 2672]
    )
    (FuncDef
      name: find-tar
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              flags: [-r]
              pairs: [
                (assign_pair
                  lhs: (LhsName name:tarball)
                  op: Equal
                  rhs: {($ VSub_Number '$1')}
                  spids: [3128]
                )
              ]
              spids: [3124]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:locations)
                  op: Equal
                  rhs: 
                    {
                      (ArrayLiteralPart
                        words: [
                          {(DQ (${ VSub_Name KUBE_ROOT) (/server/) (${ VSub_Name tarball))}
                          {
                            (DQ (${ VSub_Name KUBE_ROOT) (/_output/release-tars/) 
                              (${ VSub_Name tarball)
                            )
                          }
                          {
                            (DQ (${ VSub_Name KUBE_ROOT) (/bazel-bin/build/release-tars/) 
                              (${ VSub_Name tarball)
                            )
                          }
                        ]
                      )
                    }
                  spids: [3132]
                )
              ]
              spids: [3132]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:location)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (Subshell
                                    child: 
                                      (AndOr
                                        children: [
                                          (SimpleCommand
                                            words: [
                                              {(ls)}
                                              {(-t)}
                                              {
                                                (DQ 
                                                  (BracedVarSub
                                                    token: <VSub_Name locations>
                                                    bracket_op: (WholeArray op_id:Lit_At)
                                                    spids: [3181 3186]
                                                  )
                                                )
                                              }
                                            ]
                                            redirects: [
                                              (Redir
                                                op_id: Redir_Great
                                                fd: 2
                                                arg_word: {(/dev/null)}
                                                spids: [3189]
                                              )
                                            ]
                                          )
                                          (C {(true)})
                                        ]
                                        op_id: Op_DPipe
                                      )
                                    spids: [3175 3195]
                                  )
                                  (C {(head)} {(-1)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [3173 3203]
                      )
                    }
                  spids: [3172]
                )
              ]
              spids: [3172]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (LogicalNot
                              child: (BoolUnary op_id:BoolUnary_f child:{(DQ (${ VSub_Name location))})
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(echo)} {(DQ ('!!! Cannot find ') (${ VSub_Name tarball))}]
                      redirects: [
                        (Redir
                          op_id: Redir_GreatAnd
                          fd: 16777215
                          arg_word: {(2)}
                          spids: [3236]
                        )
                      ]
                    )
                    (C {(exit)} {(1)})
                  ]
                  spids: [16777215 3224]
                )
              ]
              spids: [16777215 3245]
            )
            (C {(echo)} {(DQ (${ VSub_Name location))})
          ]
          spids: [3121]
        )
      spids: [3115 3120]
    )
    (FuncDef
      name: find-release-tars
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:SERVER_BINARY_TAR)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [(C {(find-tar)} {(kubernetes-server-linux-amd64.tar.gz)})]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [3293 3297]
                      )
                    }
                  spids: [3292]
                )
              ]
              spids: [3292]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:SALT_TAR)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [(C {(find-tar)} {(kubernetes-salt.tar.gz)})]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [3301 3305]
                      )
                    }
                  spids: [3300]
                )
              ]
              spids: [3300]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBE_MANIFESTS_TAR)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [3313]
                )
              ]
              spids: [3313]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (AndOr
                          children: [
                            (DBracket
                              expr: 
                                (LogicalOr
                                  left: 
                                    (BoolBinary
                                      op_id: BoolBinary_GlobDEqual
                                      left: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              token: <VSub_Name MASTER_OS_DISTRIBUTION>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                              spids: [3321 3324]
                                            )
                                          )
                                        }
                                      right: {(DQ (trusty))}
                                    )
                                  right: 
                                    (LogicalOr
                                      left: 
                                        (BoolBinary
                                          op_id: BoolBinary_GlobDEqual
                                          left: 
                                            {
                                              (DQ 
                                                (BracedVarSub
                                                  token: <VSub_Name MASTER_OS_DISTRIBUTION>
                                                  suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                                  spids: [3336 3339]
                                                )
                                              )
                                            }
                                          right: {(DQ (gci))}
                                        )
                                      right: 
                                        (LogicalOr
                                          left: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobDEqual
                                              left: 
                                                {
                                                  (DQ 
                                                    (BracedVarSub
                                                      token: <VSub_Name MASTER_OS_DISTRIBUTION>
                                                      suffix_op: 
                                                        (StringUnary
                                                          op_id: VTest_ColonHyphen
                                                          arg_word: {(SQ )}
                                                        )
                                                      spids: [3351 3354]
                                                    )
                                                  )
                                                }
                                              right: {(DQ (container-linux))}
                                            )
                                          right: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobDEqual
                                              left: 
                                                {
                                                  (DQ 
                                                    (BracedVarSub
                                                      token: <VSub_Name MASTER_OS_DISTRIBUTION>
                                                      suffix_op: 
                                                        (StringUnary
                                                          op_id: VTest_ColonHyphen
                                                          arg_word: {(SQ )}
                                                        )
                                                      spids: [3366 3369]
                                                    )
                                                  )
                                                }
                                              right: {(DQ (ubuntu))}
                                            )
                                        )
                                    )
                                )
                            )
                            (DBracket
                              expr: 
                                (LogicalOr
                                  left: 
                                    (BoolBinary
                                      op_id: BoolBinary_GlobDEqual
                                      left: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              token: <VSub_Name NODE_OS_DISTRIBUTION>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                              spids: [3387 3390]
                                            )
                                          )
                                        }
                                      right: {(DQ (trusty))}
                                    )
                                  right: 
                                    (LogicalOr
                                      left: 
                                        (BoolBinary
                                          op_id: BoolBinary_GlobDEqual
                                          left: 
                                            {
                                              (DQ 
                                                (BracedVarSub
                                                  token: <VSub_Name NODE_OS_DISTRIBUTION>
                                                  suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                                  spids: [3402 3405]
                                                )
                                              )
                                            }
                                          right: {(DQ (gci))}
                                        )
                                      right: 
                                        (LogicalOr
                                          left: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobDEqual
                                              left: 
                                                {
                                                  (DQ 
                                                    (BracedVarSub
                                                      token: <VSub_Name NODE_OS_DISTRIBUTION>
                                                      suffix_op: 
                                                        (StringUnary
                                                          op_id: VTest_ColonHyphen
                                                          arg_word: {(SQ )}
                                                        )
                                                      spids: [3417 3420]
                                                    )
                                                  )
                                                }
                                              right: {(DQ (container-linux))}
                                            )
                                          right: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobDEqual
                                              left: 
                                                {
                                                  (DQ 
                                                    (BracedVarSub
                                                      token: <VSub_Name NODE_OS_DISTRIBUTION>
                                                      suffix_op: 
                                                        (StringUnary
                                                          op_id: VTest_ColonHyphen
                                                          arg_word: {(SQ )}
                                                        )
                                                      spids: [3432 3435]
                                                    )
                                                  )
                                                }
                                              right: {(DQ (ubuntu))}
                                            )
                                        )
                                    )
                                )
                            )
                          ]
                          op_id: Op_DPipe
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:KUBE_MANIFESTS_TAR)
                          op: Equal
                          rhs: 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [(C {(find-tar)} {(kubernetes-manifests.tar.gz)})]
                                  )
                                left_token: <Left_CommandSub '$('>
                                spids: [3452 3456]
                              )
                            }
                          spids: [3451]
                        )
                      ]
                      spids: [3451]
                    )
                  ]
                  spids: [16777215 3448]
                )
              ]
              spids: [16777215 3459]
            )
          ]
          spids: [3289]
        )
      spids: [3283 3288]
    )
    (FuncDef
      name: find-release-version
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBE_GIT_VERSION)
                  op: Equal
                  rhs: {(DQ )}
                  spids: [3491]
                )
              ]
              spids: [3491]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolUnary
                              op_id: BoolUnary_f
                              child: {(DQ (${ VSub_Name KUBE_ROOT) (/version))}
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:KUBE_GIT_VERSION)
                          op: Equal
                          rhs: 
                            {
                              (DQ 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {(cat)} {(${ VSub_Name KUBE_ROOT) (/version)})]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [3517 3524]
                                )
                              )
                            }
                          spids: [3515]
                        )
                      ]
                      spids: [3515]
                    )
                  ]
                  spids: [16777215 3512]
                )
              ]
              spids: [16777215 3528]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolUnary
                              op_id: BoolUnary_f
                              child: 
                                {
                                  (DQ (${ VSub_Name KUBE_ROOT) 
                                    (/_output/release-stage/full/kubernetes/version)
                                  )
                                }
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:KUBE_GIT_VERSION)
                          op: Equal
                          rhs: 
                            {
                              (DQ 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(cat)} 
                                          {(${ VSub_Name KUBE_ROOT) 
                                            (/_output/release-stage/full/kubernetes/version)
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [3552 3559]
                                )
                              )
                            }
                          spids: [3550]
                        )
                      ]
                      spids: [3550]
                    )
                  ]
                  spids: [16777215 3547]
                )
              ]
              spids: [16777215 3563]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolUnary
                              op_id: BoolUnary_z
                              child: {(DQ (${ VSub_Name KUBE_GIT_VERSION))}
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(echo)} {(DQ ('!!! Cannot find release version'))}) (C {(exit)} {(1)})]
                  spids: [16777215 3582]
                )
              ]
              spids: [16777215 3597]
            )
          ]
          spids: [3488]
        )
      spids: [3482 3487]
    )
    (FuncDef
      name: stage-images
      body: 
        (BraceGroup
          children: [
            (C {(find-release-version)})
            (C {(find-release-tars)})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBE_IMAGE_TAG)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (Pipeline
                                  children: [
                                    (C {(echo)} {(DQ ) (DQ (${ VSub_Name KUBE_GIT_VERSION)) (DQ )})
                                    (C {(sed)} {(SQ <'s/+/-/g'>)})
                                  ]
                                  negated: False
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [3620 3640]
                        )
                      )
                    }
                  spids: [3618]
                )
              ]
              spids: [3618]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:docker_wrapped_binaries)
                  op: Equal
                  rhs: 
                    {
                      (ArrayLiteralPart
                        words: [
                          {(DQ (kube-apiserver))}
                          {(DQ (kube-controller-manager))}
                          {(DQ (kube-scheduler))}
                          {(DQ (kube-proxy))}
                        ]
                      )
                    }
                  spids: [3647]
                )
              ]
              spids: [3645]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:docker_cmd)
                  op: Equal
                  rhs: {(ArrayLiteralPart words:[{(DQ (docker))}])}
                  spids: [3677]
                )
              ]
              spids: [3675]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolBinary
                              op_id: BoolBinary_GlobDEqual
                              left: {(DQ (${ VSub_Name KUBE_DOCKER_REGISTRY))}
                              right: {(DQ (gcr.io/)) (Lit_Other '*')}
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_Local
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:docker_push_cmd)
                          op: Equal
                          rhs: {(ArrayLiteralPart words:[{(DQ (gcloud))} {(DQ (docker))}])}
                          spids: [3711]
                        )
                      ]
                      spids: [3709]
                    )
                  ]
                  spids: [16777215 3706]
                )
              ]
              else_action: [
                (Assignment
                  keyword: Assign_Local
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:docker_push_cmd)
                      op: Equal
                      rhs: 
                        {
                          (ArrayLiteralPart
                            words: [
                              {
                                (DQ 
                                  (BracedVarSub
                                    token: <VSub_Name docker_cmd>
                                    bracket_op: (WholeArray op_id:Lit_At)
                                    spids: [3731 3736]
                                  )
                                )
                              }
                            ]
                          )
                        }
                      spids: [3728]
                    )
                  ]
                  spids: [3726]
                )
              ]
              spids: [3723 3741]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:temp_dir)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [(C {(mktemp)} {(-d)} {(-t)} {(SQ <kube-server-XXXX>)})]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [3749 3759]
                        )
                      )
                    }
                  spids: [3747]
                )
              ]
              spids: [3745]
            )
            (Sentence
              child: 
                (C {(tar)} {(xzfv)} {(DQ (${ VSub_Name SERVER_BINARY_TAR))} {(-C)} 
                  {(DQ (${ VSub_Name temp_dir))}
                )
              terminator: <Op_Amp '&'>
            )
            (SimpleCommand
              redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[3783])]
            )
            (ForEach
              iter_name: binary
              iter_words: [
                {
                  (DQ 
                    (BracedVarSub
                      token: <VSub_Name docker_wrapped_binaries>
                      bracket_op: (WholeArray op_id:Lit_At)
                      spids: [3796 3801]
                    )
                  )
                }
              ]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (Assignment
                      keyword: Assign_Local
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:docker_tag)
                          op: Equal
                          rhs: 
                            {
                              (DQ 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(cat)} 
                                          {(${ VSub_Name temp_dir) (/kubernetes/server/bin/) 
                                            (${ VSub_Name binary) (.docker_tag)
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [3812 3823]
                                )
                              )
                            }
                          spids: [3810]
                        )
                      ]
                      spids: [3808]
                    )
                    (Sentence
                      child: 
                        (Subshell
                          child: 
                            (CommandList
                              children: [
                                (C 
                                  {
                                    (DQ 
                                      (BracedVarSub
                                        token: <VSub_Name docker_cmd>
                                        bracket_op: (WholeArray op_id:Lit_At)
                                        spids: [3831 3836]
                                      )
                                    )
                                  } {(load)} {(-i)} {(DQ (${ VSub_Name temp_dir) (/kubernetes/server/bin/) (${ VSub_Name binary) (.tar))}
                                )
                                (AndOr
                                  children: [
                                    (SimpleCommand
                                      words: [
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              token: <VSub_Name docker_cmd>
                                              bracket_op: (WholeArray op_id:Lit_At)
                                              spids: [3856 3861]
                                            )
                                          )
                                        }
                                        {(rmi)}
                                        {
                                          (DQ (${ VSub_Name KUBE_DOCKER_REGISTRY) (/) 
                                            (${ VSub_Name binary) (':') (${ VSub_Name KUBE_IMAGE_TAG)
                                          )
                                        }
                                      ]
                                      redirects: [
                                        (Redir
                                          op_id: Redir_Great
                                          fd: 2
                                          arg_word: {(/dev/null)}
                                          spids: [3880]
                                        )
                                      ]
                                    )
                                    (C {(true)})
                                  ]
                                  op_id: Op_DPipe
                                )
                                (C 
                                  {
                                    (DQ 
                                      (BracedVarSub
                                        token: <VSub_Name docker_cmd>
                                        bracket_op: (WholeArray op_id:Lit_At)
                                        spids: [3889 3894]
                                      )
                                    )
                                  } {(tag)} {(DQ (gcr.io/google_containers/) (${ VSub_Name binary) (':') (${ VSub_Name docker_tag))} 
                                  {
                                    (DQ (${ VSub_Name KUBE_DOCKER_REGISTRY) (/) (${ VSub_Name binary) 
                                      (':') (${ VSub_Name KUBE_IMAGE_TAG)
                                    )
                                  }
                                )
                                (C 
                                  {
                                    (DQ 
                                      (BracedVarSub
                                        token: <VSub_Name docker_push_cmd>
                                        bracket_op: (WholeArray op_id:Lit_At)
                                        spids: [3926 3931]
                                      )
                                    )
                                  } {(push)} 
                                  {
                                    (DQ (${ VSub_Name KUBE_DOCKER_REGISTRY) (/) (${ VSub_Name binary) 
                                      (':') (${ VSub_Name KUBE_IMAGE_TAG)
                                    )
                                  }
                                )
                              ]
                            )
                          spids: [3827 3951]
                        )
                      terminator: <Op_Amp '&'>
                    )
                    (Sentence
                      child: 
                        (SimpleCommand
                          redirects: [
                            (Redir
                              op_id: Redir_Great
                              fd: 16777215
                              arg_word: 
                                {(DQ (${ VSub_Name temp_dir) (/) (${ VSub_Name binary) (-push.log))}
                              spids: [3954]
                            )
                          ]
                        )
                      terminator: <Op_Amp '&'>
                    )
                  ]
                  spids: [3805 3970]
                )
              spids: [3794 3803]
            )
            (AndOr
              children: [
                (C 
                  {(kube) (Lit_Other ':') (Lit_Other ':') (util) (Lit_Other ':') (Lit_Other ':') 
                    (wait-for-jobs)
                  }
                )
                (BraceGroup
                  children: [
                    (C 
                      {(kube) (Lit_Other ':') (Lit_Other ':') (log) (Lit_Other ':') (Lit_Other ':') 
                        (error)
                      } {(DQ ('unable to push images. See ') (${ VSub_Name temp_dir) ('/*.log for more info.'))}
                    )
                    (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
                  ]
                  spids: [3984]
                )
              ]
              op_id: Op_DPipe
            )
            (C {(rm)} {(-rf)} {(DQ (${ VSub_Name temp_dir))})
            (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})
          ]
          spids: [3608]
        )
      spids: [3602 3607]
    )
    (FuncDef
      name: yaml-quote
      body: 
        (BraceGroup
          children: [
            (C {(echo)} 
              {
                (DQ ("'") 
                  (CommandSubPart
                    command_list: 
                      (CommandList
                        children: [
                          (Pipeline
                            children: [
                              (C {(echo)} 
                                {
                                  (DQ 
                                    (BracedVarSub
                                      token: <VSub_At '@'>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                      spids: [4061 4064]
                                    )
                                  )
                                }
                              )
                              (C {(sed)} {(-e)} {(DQ ("s/'/''/g"))})
                            ]
                            negated: False
                          )
                        ]
                      )
                    left_token: <Left_CommandSub '$('>
                    spids: [4057 4076]
                  ) ("'")
                )
              }
            )
          ]
          spids: [4050]
        )
      spids: [4046 4049]
    )
    (FuncDef
      name: build-runtime-config
      body: (BraceGroup children:[(C {(Lit_Other ':')})] spids:[4095])
      spids: [4089 4094]
    )
    (FuncDef
      name: write-cluster-name
      body: 
        (BraceGroup
          children: [
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (Redir
                  op_id: Redir_Great
                  fd: 16777215
                  arg_word: {(DQ (${ VSub_Name KUBE_TEMP) (/cluster-name.txt))}
                  spids: [4125]
                )
                (HereDoc
                  op_id: Redir_DLess
                  fd: 16777215
                  body: {(DQ (${ VSub_Name CLUSTER_NAME) ('\n'))}
                  do_expansion: True
                  here_end: EOF
                  was_filled: True
                  spids: [4133]
                )
              ]
            )
          ]
          spids: [4120]
        )
      spids: [4116 4119]
    )
    (FuncDef
      name: write-master-env
      body: 
        (BraceGroup
          children: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (LogicalAnd
                              left: 
                                (BoolBinary
                                  op_id: BoolBinary_GlobDEqual
                                  left: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          token: <VSub_Name REGISTER_MASTER_KUBELET>
                                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                          spids: [4165 4168]
                                        )
                                      )
                                    }
                                  right: {(DQ (true))}
                                )
                              right: 
                                (BoolUnary
                                  op_id: BoolUnary_z
                                  child: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          token: <VSub_Name KUBELET_APISERVER>
                                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                          spids: [4182 4185]
                                        )
                                      )
                                    }
                                )
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:KUBELET_APISERVER)
                          op: Equal
                          rhs: {(DQ (${ VSub_Name MASTER_NAME))}
                          spids: [4194]
                        )
                      ]
                      spids: [4194]
                    )
                  ]
                  spids: [16777215 4191]
                )
              ]
              spids: [16777215 4202]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolUnary
                              op_id: BoolUnary_z
                              child: 
                                {
                                  (DQ 
                                    (BracedVarSub
                                      token: <VSub_Name KUBERNETES_MASTER_NAME>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                      spids: [4212 4215]
                                    )
                                  )
                                }
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:KUBERNETES_MASTER_NAME)
                          op: Equal
                          rhs: {(DQ (${ VSub_Name MASTER_NAME))}
                          spids: [4224]
                        )
                      ]
                      spids: [4224]
                    )
                  ]
                  spids: [16777215 4221]
                )
              ]
              spids: [16777215 4232]
            )
            (C {(build-kube-env)} {(true)} {(DQ (${ VSub_Name KUBE_TEMP) (/master-kube-env.yaml))})
            (C {(build-kube-master-certs)} {(DQ (${ VSub_Name KUBE_TEMP) (/kube-master-certs.yaml))})
          ]
          spids: [4149]
        )
      spids: [4145 4148]
    )
    (FuncDef
      name: write-node-env
      body: 
        (BraceGroup
          children: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolUnary
                              op_id: BoolUnary_z
                              child: 
                                {
                                  (DQ 
                                    (BracedVarSub
                                      token: <VSub_Name KUBERNETES_MASTER_NAME>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                      spids: [4274 4277]
                                    )
                                  )
                                }
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:KUBERNETES_MASTER_NAME)
                          op: Equal
                          rhs: {(DQ (${ VSub_Name MASTER_NAME))}
                          spids: [4286]
                        )
                      ]
                      spids: [4286]
                    )
                  ]
                  spids: [16777215 4283]
                )
              ]
              spids: [16777215 4294]
            )
            (C {(build-kube-env)} {(false)} {(DQ (${ VSub_Name KUBE_TEMP) (/node-kube-env.yaml))})
          ]
          spids: [4264]
        )
      spids: [4260 4263]
    )
    (FuncDef
      name: build-kube-master-certs
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:file)
                  op: Equal
                  rhs: {($ VSub_Number '$1')}
                  spids: [4321]
                )
              ]
              spids: [4319]
            )
            (C {(rm)} {(-f)} {(${ VSub_Name file)})
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (Redir
                  op_id: Redir_Great
                  fd: 16777215
                  arg_word: {($ VSub_Name '$file')}
                  spids: [4336]
                )
                (HereDoc
                  op_id: Redir_DLess
                  fd: 16777215
                  body: 
                    {
                      (DQ ('KUBEAPISERVER_CERT: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name KUBEAPISERVER_CERT_BASE64>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [4346 4349]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4343 4350]
                        ) ('\n') ('KUBEAPISERVER_KEY: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name KUBEAPISERVER_KEY_BASE64>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [4356 4359]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4353 4360]
                        ) ('\n') ('CA_KEY: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name CA_KEY_BASE64>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [4366 4369]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4363 4370]
                        ) ('\n') ('AGGREGATOR_CA_KEY: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name AGGREGATOR_CA_KEY_BASE64>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [4376 4379]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4373 4380]
                        ) ('\n') ('REQUESTHEADER_CA_CERT: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name REQUESTHEADER_CA_CERT_BASE64>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [4386 4389]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4383 4390]
                        ) ('\n') ('PROXY_CLIENT_CERT: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name PROXY_CLIENT_CERT_BASE64>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [4396 4399]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4393 4400]
                        ) ('\n') ('PROXY_CLIENT_KEY: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name PROXY_CLIENT_KEY_BASE64>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [4406 4409]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4403 4410]
                        ) ('\n')
                      )
                    }
                  do_expansion: True
                  here_end: EOF
                  was_filled: True
                  spids: [4339]
                )
              ]
            )
          ]
          spids: [4316]
        )
      spids: [4312 4315]
    )
    (FuncDef
      name: build-kube-env
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:master)
                  op: Equal
                  rhs: {($ VSub_Number '$1')}
                  spids: [4428]
                )
              ]
              spids: [4426]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:file)
                  op: Equal
                  rhs: {($ VSub_Number '$2')}
                  spids: [4434]
                )
              ]
              spids: [4432]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:server_binary_tar_url)
                  op: Equal
                  rhs: {($ VSub_Name '$SERVER_BINARY_TAR_URL')}
                  spids: [4441]
                )
              ]
              spids: [4439]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:salt_tar_url)
                  op: Equal
                  rhs: {($ VSub_Name '$SALT_TAR_URL')}
                  spids: [4447]
                )
              ]
              spids: [4445]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:kube_manifests_tar_url)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (BracedVarSub
                          token: <VSub_Name KUBE_MANIFESTS_TAR_URL>
                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                          spids: [4455 4458]
                        )
                      )
                    }
                  spids: [4453]
                )
              ]
              spids: [4451]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (AndOr
                          children: [
                            (DBracket
                              expr: 
                                (LogicalAnd
                                  left: 
                                    (BoolBinary
                                      op_id: BoolBinary_GlobDEqual
                                      left: {(DQ (${ VSub_Name master))}
                                      right: {(DQ (true))}
                                    )
                                  right: 
                                    (BoolBinary
                                      op_id: BoolBinary_GlobDEqual
                                      left: {(DQ (${ VSub_Name MASTER_OS_DISTRIBUTION))}
                                      right: {(DQ (container-linux))}
                                    )
                                )
                            )
                            (AndOr
                              children: [
                                (DBracket
                                  expr: 
                                    (LogicalAnd
                                      left: 
                                        (BoolBinary
                                          op_id: BoolBinary_GlobDEqual
                                          left: {(DQ (${ VSub_Name master))}
                                          right: {(DQ (false))}
                                        )
                                      right: 
                                        (BoolBinary
                                          op_id: BoolBinary_GlobDEqual
                                          left: {(DQ (${ VSub_Name NODE_OS_DISTRIBUTION))}
                                          right: {(DQ (container-linux))}
                                        )
                                    )
                                )
                                (AndOr
                                  children: [
                                    (DBracket
                                      expr: 
                                        (LogicalAnd
                                          left: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobDEqual
                                              left: {(DQ (${ VSub_Name master))}
                                              right: {(DQ (true))}
                                            )
                                          right: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobDEqual
                                              left: {(DQ (${ VSub_Name MASTER_OS_DISTRIBUTION))}
                                              right: {(DQ (ubuntu))}
                                            )
                                        )
                                    )
                                    (DBracket
                                      expr: 
                                        (LogicalAnd
                                          left: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobDEqual
                                              left: {(DQ (${ VSub_Name master))}
                                              right: {(DQ (false))}
                                            )
                                          right: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobDEqual
                                              left: {(DQ (${ VSub_Name NODE_OS_DISTRIBUTION))}
                                              right: {(DQ (ubuntu))}
                                            )
                                        )
                                    )
                                  ]
                                  op_id: Op_DPipe
                                )
                              ]
                              op_id: Op_DPipe
                            )
                          ]
                          op_id: Op_DPipe
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:server_binary_tar_url)
                          op: Equal
                          rhs: 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (C {(split_csv)} {(DQ (${ VSub_Name SERVER_BINARY_TAR_URL))})
                                    ]
                                  )
                                left_token: <Left_CommandSub '$('>
                                spids: [4606 4614]
                              )
                            }
                          spids: [4605]
                        )
                      ]
                      spids: [4605]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:salt_tar_url)
                          op: Equal
                          rhs: 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [(C {(split_csv)} {(DQ (${ VSub_Name SALT_TAR_URL))})]
                                  )
                                left_token: <Left_CommandSub '$('>
                                spids: [4618 4626]
                              )
                            }
                          spids: [4617]
                        )
                      ]
                      spids: [4617]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:kube_manifests_tar_url)
                          op: Equal
                          rhs: 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (C {(split_csv)} {(DQ (${ VSub_Name KUBE_MANIFESTS_TAR_URL))})
                                    ]
                                  )
                                left_token: <Left_CommandSub '$('>
                                spids: [4630 4638]
                              )
                            }
                          spids: [4629]
                        )
                      ]
                      spids: [4629]
                    )
                  ]
                  spids: [16777215 4598]
                )
              ]
              spids: [16777215 4641]
            )
            (C {(build-runtime-config)})
            (C {(gen-uid)})
            (C {(rm)} {(-f)} {(${ VSub_Name file)})
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (Redir
                  op_id: Redir_Great
                  fd: 16777215
                  arg_word: {($ VSub_Name '$file')}
                  spids: [4663]
                )
                (HereDoc
                  op_id: Redir_DLess
                  fd: 16777215
                  body: 
                    {
                      (DQ ('CLUSTER_NAME: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [(C {(yaml-quote)} {(${ VSub_Name CLUSTER_NAME)})]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4670 4676]
                        ) ('\n') ('ENV_TIMESTAMP: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (CommandSubPart
                                      command_list: 
                                        (CommandList
                                          children: [
                                            (C {(date)} {(-u)} 
                                              {(Lit_Other '+') (Lit_Other '%') (Y-) (Lit_Other '%') 
                                                (m-) (Lit_Other '%') (dT) (Lit_Other '%') (T) (Lit_Other '%') (z)
                                              }
                                            )
                                          ]
                                        )
                                      left_token: <Left_CommandSub '$('>
                                      spids: [4682 4698]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4679 4699]
                        ) ('\n') ('INSTANCE_PREFIX: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [(C {(yaml-quote)} {(${ VSub_Name INSTANCE_PREFIX)})]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4702 4708]
                        ) ('\n') ('NODE_INSTANCE_PREFIX: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [(C {(yaml-quote)} {(${ VSub_Name NODE_INSTANCE_PREFIX)})]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4711 4717]
                        ) ('\n') ('NODE_TAGS: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name NODE_TAGS>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [4723 4726]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4720 4727]
                        ) ('\n') ('NODE_NETWORK: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name NETWORK>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [4733 4736]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4730 4737]
                        ) ('\n') ('NODE_SUBNETWORK: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name SUBNETWORK>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [4743 4746]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4740 4747]
                        ) ('\n') ('CLUSTER_IP_RANGE: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name CLUSTER_IP_RANGE>
                                      suffix_op: 
                                        (StringUnary
                                          op_id: VTest_ColonHyphen
                                          arg_word: {(10.244.0.0) (Lit_Slash /) (16)}
                                        )
                                      spids: [4753 4759]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4750 4760]
                        ) ('\n') ('SERVER_BINARY_TAR_URL: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [(C {(yaml-quote)} {(${ VSub_Name server_binary_tar_url)})]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4763 4769]
                        ) ('\n') ('SERVER_BINARY_TAR_HASH: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [(C {(yaml-quote)} {(${ VSub_Name SERVER_BINARY_TAR_HASH)})]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4772 4778]
                        ) ('\n') ('PROJECT_ID: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [(C {(yaml-quote)} {(${ VSub_Name PROJECT)})]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4781 4787]
                        ) ('\n') ('NETWORK_PROJECT_ID: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [(C {(yaml-quote)} {(${ VSub_Name NETWORK_PROJECT)})]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4790 4796]
                        ) ('\n') ('SALT_TAR_URL: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [(C {(yaml-quote)} {(${ VSub_Name salt_tar_url)})]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4799 4805]
                        ) ('\n') ('SALT_TAR_HASH: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [(C {(yaml-quote)} {(${ VSub_Name SALT_TAR_HASH)})]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4808 4814]
                        ) ('\n') ('SERVICE_CLUSTER_IP_RANGE: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [(C {(yaml-quote)} {(${ VSub_Name SERVICE_CLUSTER_IP_RANGE)})]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4817 4823]
                        ) ('\n') ('KUBERNETES_MASTER_NAME: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [(C {(yaml-quote)} {(${ VSub_Name KUBERNETES_MASTER_NAME)})]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4826 4832]
                        ) ('\n') ('ALLOCATE_NODE_CIDRS: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ALLOCATE_NODE_CIDRS>
                                      suffix_op: 
                                        (StringUnary
                                          op_id: VTest_ColonHyphen
                                          arg_word: {(false)}
                                        )
                                      spids: [4838 4842]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4835 4843]
                        ) ('\n') ('ENABLE_CLUSTER_MONITORING: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ENABLE_CLUSTER_MONITORING>
                                      suffix_op: 
                                        (StringUnary
                                          op_id: VTest_ColonHyphen
                                          arg_word: {(none)}
                                        )
                                      spids: [4849 4853]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4846 4854]
                        ) ('\n') ('ENABLE_METRICS_SERVER: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ENABLE_METRICS_SERVER>
                                      suffix_op: 
                                        (StringUnary
                                          op_id: VTest_ColonHyphen
                                          arg_word: {(false)}
                                        )
                                      spids: [4860 4864]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4857 4865]
                        ) ('\n') ('DOCKER_REGISTRY_MIRROR_URL: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name DOCKER_REGISTRY_MIRROR_URL>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [4871 4874]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4868 4875]
                        ) ('\n') ('ENABLE_L7_LOADBALANCING: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ENABLE_L7_LOADBALANCING>
                                      suffix_op: 
                                        (StringUnary
                                          op_id: VTest_ColonHyphen
                                          arg_word: {(none)}
                                        )
                                      spids: [4881 4885]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4878 4886]
                        ) ('\n') ('ENABLE_CLUSTER_LOGGING: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ENABLE_CLUSTER_LOGGING>
                                      suffix_op: 
                                        (StringUnary
                                          op_id: VTest_ColonHyphen
                                          arg_word: {(false)}
                                        )
                                      spids: [4892 4896]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4889 4897]
                        ) ('\n') ('ENABLE_CLUSTER_UI: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ENABLE_CLUSTER_UI>
                                      suffix_op: 
                                        (StringUnary
                                          op_id: VTest_ColonHyphen
                                          arg_word: {(false)}
                                        )
                                      spids: [4903 4907]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4900 4908]
                        ) ('\n') ('ENABLE_NODE_PROBLEM_DETECTOR: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ENABLE_NODE_PROBLEM_DETECTOR>
                                      suffix_op: 
                                        (StringUnary
                                          op_id: VTest_ColonHyphen
                                          arg_word: {(none)}
                                        )
                                      spids: [4914 4918]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4911 4919]
                        ) ('\n') ('NODE_PROBLEM_DETECTOR_VERSION: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name NODE_PROBLEM_DETECTOR_VERSION>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [4925 4928]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4922 4929]
                        ) ('\n') ('NODE_PROBLEM_DETECTOR_TAR_HASH: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name NODE_PROBLEM_DETECTOR_TAR_HASH>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [4935 4938]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4932 4939]
                        ) ('\n') ('ENABLE_NODE_LOGGING: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ENABLE_NODE_LOGGING>
                                      suffix_op: 
                                        (StringUnary
                                          op_id: VTest_ColonHyphen
                                          arg_word: {(false)}
                                        )
                                      spids: [4945 4949]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4942 4950]
                        ) ('\n') ('ENABLE_RESCHEDULER: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ENABLE_RESCHEDULER>
                                      suffix_op: 
                                        (StringUnary
                                          op_id: VTest_ColonHyphen
                                          arg_word: {(false)}
                                        )
                                      spids: [4956 4960]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4953 4961]
                        ) ('\n') ('LOGGING_DESTINATION: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name LOGGING_DESTINATION>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [4967 4970]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4964 4971]
                        ) ('\n') ('ELASTICSEARCH_LOGGING_REPLICAS: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ELASTICSEARCH_LOGGING_REPLICAS>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [4977 4980]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4974 4981]
                        ) ('\n') ('ENABLE_CLUSTER_DNS: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ENABLE_CLUSTER_DNS>
                                      suffix_op: 
                                        (StringUnary
                                          op_id: VTest_ColonHyphen
                                          arg_word: {(false)}
                                        )
                                      spids: [4987 4991]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4984 4992]
                        ) ('\n') ('ENABLE_CLUSTER_REGISTRY: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ENABLE_CLUSTER_REGISTRY>
                                      suffix_op: 
                                        (StringUnary
                                          op_id: VTest_ColonHyphen
                                          arg_word: {(false)}
                                        )
                                      spids: [4998 5002]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [4995 5003]
                        ) ('\n') ('CLUSTER_REGISTRY_DISK: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name CLUSTER_REGISTRY_DISK>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5009 5012]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5006 5013]
                        ) ('\n') ('CLUSTER_REGISTRY_DISK_SIZE: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name CLUSTER_REGISTRY_DISK_SIZE>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5019 5022]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5016 5023]
                        ) ('\n') ('DNS_SERVER_IP: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name DNS_SERVER_IP>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5029 5032]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5026 5033]
                        ) ('\n') ('DNS_DOMAIN: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name DNS_DOMAIN>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5039 5042]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5036 5043]
                        ) ('\n') ('ENABLE_DNS_HORIZONTAL_AUTOSCALER: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ENABLE_DNS_HORIZONTAL_AUTOSCALER>
                                      suffix_op: 
                                        (StringUnary
                                          op_id: VTest_ColonHyphen
                                          arg_word: {(false)}
                                        )
                                      spids: [5049 5053]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5046 5054]
                        ) ('\n') ('KUBELET_TOKEN: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name KUBELET_TOKEN>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5060 5063]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5057 5064]
                        ) ('\n') ('KUBE_PROXY_DAEMONSET: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name KUBE_PROXY_DAEMONSET>
                                      suffix_op: 
                                        (StringUnary
                                          op_id: VTest_ColonHyphen
                                          arg_word: {(false)}
                                        )
                                      spids: [5070 5074]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5067 5075]
                        ) ('\n') ('KUBE_PROXY_TOKEN: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name KUBE_PROXY_TOKEN>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5081 5084]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5078 5085]
                        ) ('\n') ('NODE_PROBLEM_DETECTOR_TOKEN: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name NODE_PROBLEM_DETECTOR_TOKEN>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5091 5094]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5088 5095]
                        ) ('\n') ('ADMISSION_CONTROL: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ADMISSION_CONTROL>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5101 5104]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5098 5105]
                        ) ('\n') ('MASTER_IP_RANGE: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [(C {(yaml-quote)} {(${ VSub_Name MASTER_IP_RANGE)})]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5108 5114]
                        ) ('\n') ('RUNTIME_CONFIG: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [(C {(yaml-quote)} {(${ VSub_Name RUNTIME_CONFIG)})]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5117 5123]
                        ) ('\n') ('CA_CERT: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name CA_CERT_BASE64>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5129 5132]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5126 5133]
                        ) ('\n') ('KUBELET_CERT: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name KUBELET_CERT_BASE64>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5139 5142]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5136 5143]
                        ) ('\n') ('KUBELET_KEY: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name KUBELET_KEY_BASE64>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5149 5152]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5146 5153]
                        ) ('\n') ('NETWORK_PROVIDER: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name NETWORK_PROVIDER>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5159 5162]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5156 5163]
                        ) ('\n') ('NETWORK_POLICY_PROVIDER: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name NETWORK_POLICY_PROVIDER>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5169 5172]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5166 5173]
                        ) ('\n') ('PREPULL_E2E_IMAGES: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name PREPULL_E2E_IMAGES>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5179 5182]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5176 5183]
                        ) ('\n') ('HAIRPIN_MODE: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name HAIRPIN_MODE>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5189 5192]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5186 5193]
                        ) ('\n') ('SOFTLOCKUP_PANIC: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name SOFTLOCKUP_PANIC>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5199 5202]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5196 5203]
                        ) ('\n') ('OPENCONTRAIL_TAG: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name OPENCONTRAIL_TAG>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5209 5212]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5206 5213]
                        ) ('\n') ('OPENCONTRAIL_KUBERNETES_TAG: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name OPENCONTRAIL_KUBERNETES_TAG>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5219 5222]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5216 5223]
                        ) ('\n') ('OPENCONTRAIL_PUBLIC_SUBNET: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name OPENCONTRAIL_PUBLIC_SUBNET>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5229 5232]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5226 5233]
                        ) ('\n') ('E2E_STORAGE_TEST_ENVIRONMENT: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name E2E_STORAGE_TEST_ENVIRONMENT>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5239 5242]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5236 5243]
                        ) ('\n') ('KUBE_IMAGE_TAG: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name KUBE_IMAGE_TAG>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5249 5252]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5246 5253]
                        ) ('\n') ('KUBE_DOCKER_REGISTRY: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name KUBE_DOCKER_REGISTRY>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5259 5262]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5256 5263]
                        ) ('\n') ('KUBE_ADDON_REGISTRY: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name KUBE_ADDON_REGISTRY>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5269 5272]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5266 5273]
                        ) ('\n') ('MULTIZONE: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name MULTIZONE>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5279 5282]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5276 5283]
                        ) ('\n') ('NON_MASQUERADE_CIDR: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name NON_MASQUERADE_CIDR>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5289 5292]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5286 5293]
                        ) ('\n') ('KUBE_UID: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name KUBE_UID>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5299 5302]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5296 5303]
                        ) ('\n') ('ENABLE_DEFAULT_STORAGE_CLASS: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ENABLE_DEFAULT_STORAGE_CLASS>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5309 5312]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5306 5313]
                        ) ('\n') ('ENABLE_APISERVER_BASIC_AUDIT: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ENABLE_APISERVER_BASIC_AUDIT>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5319 5322]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5316 5323]
                        ) ('\n') ('ENABLE_APISERVER_ADVANCED_AUDIT: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ENABLE_APISERVER_ADVANCED_AUDIT>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5329 5332]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5326 5333]
                        ) ('\n') ('ENABLE_CACHE_MUTATION_DETECTOR: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ENABLE_CACHE_MUTATION_DETECTOR>
                                      suffix_op: 
                                        (StringUnary
                                          op_id: VTest_ColonHyphen
                                          arg_word: {(false)}
                                        )
                                      spids: [5339 5343]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5336 5344]
                        ) ('\n') ('ENABLE_PATCH_CONVERSION_DETECTOR: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ENABLE_PATCH_CONVERSION_DETECTOR>
                                      suffix_op: 
                                        (StringUnary
                                          op_id: VTest_ColonHyphen
                                          arg_word: {(false)}
                                        )
                                      spids: [5350 5354]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5347 5355]
                        ) ('\n') ('ADVANCED_AUDIT_POLICY: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ADVANCED_AUDIT_POLICY>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5361 5364]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5358 5365]
                        ) ('\n') ('ADVANCED_AUDIT_BACKEND: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ADVANCED_AUDIT_BACKEND>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(log)})
                                      spids: [5371 5375]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5368 5376]
                        ) ('\n') ('GCE_API_ENDPOINT: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name GCE_API_ENDPOINT>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5382 5385]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5379 5386]
                        ) ('\n') ('PROMETHEUS_TO_SD_ENDPOINT: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name PROMETHEUS_TO_SD_ENDPOINT>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5392 5395]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5389 5396]
                        ) ('\n') ('PROMETHEUS_TO_SD_PREFIX: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name PROMETHEUS_TO_SD_PREFIX>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5402 5405]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5399 5406]
                        ) ('\n') ('ENABLE_PROMETHEUS_TO_SD: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ENABLE_PROMETHEUS_TO_SD>
                                      suffix_op: 
                                        (StringUnary
                                          op_id: VTest_ColonHyphen
                                          arg_word: {(false)}
                                        )
                                      spids: [5412 5416]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5409 5417]
                        ) ('\n') ('ENABLE_POD_PRIORITY: ') 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (C {(yaml-quote)} 
                                  {
                                    (BracedVarSub
                                      token: <VSub_Name ENABLE_POD_PRIORITY>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                      spids: [5423 5426]
                                    )
                                  }
                                )
                              ]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [5420 5427]
                        ) ('\n')
                      )
                    }
                  do_expansion: True
                  here_end: EOF
                  was_filled: True
                  spids: [4666]
                )
              ]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name KUBELET_PORT>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [5438 5441]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [5452]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('KUBELET_PORT: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {(yaml-quote)} {(${ VSub_Name KUBELET_PORT)})]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [5459 5465]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [5455]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 5447]
                )
              ]
              spids: [16777215 5469]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name KUBE_APISERVER_REQUEST_TIMEOUT>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [5479 5482]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [5493]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('KUBE_APISERVER_REQUEST_TIMEOUT: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {(${ VSub_Name KUBE_APISERVER_REQUEST_TIMEOUT)}
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [5500 5506]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [5496]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 5488]
                )
              ]
              spids: [16777215 5510]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name TERMINATED_POD_GC_THRESHOLD>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [5520 5523]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [5534]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('TERMINATED_POD_GC_THRESHOLD: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} {(${ VSub_Name TERMINATED_POD_GC_THRESHOLD)})
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [5541 5547]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [5537]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 5529]
                )
              ]
              spids: [16777215 5551]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (AndOr
                          children: [
                            (DBracket
                              expr: 
                                (LogicalOr
                                  left: 
                                    (LogicalAnd
                                      left: 
                                        (BoolBinary
                                          op_id: BoolBinary_GlobDEqual
                                          left: {(DQ (${ VSub_Name master))}
                                          right: {(DQ (true))}
                                        )
                                      right: 
                                        (LogicalOr
                                          left: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobDEqual
                                              left: {(DQ (${ VSub_Name MASTER_OS_DISTRIBUTION))}
                                              right: {(DQ (trusty))}
                                            )
                                          right: 
                                            (LogicalOr
                                              left: 
                                                (BoolBinary
                                                  op_id: BoolBinary_GlobDEqual
                                                  left: {(DQ (${ VSub_Name MASTER_OS_DISTRIBUTION))}
                                                  right: {(DQ (gci))}
                                                )
                                              right: 
                                                (BoolBinary
                                                  op_id: BoolBinary_GlobDEqual
                                                  left: {(DQ (${ VSub_Name MASTER_OS_DISTRIBUTION))}
                                                  right: {(DQ (container-linux))}
                                                )
                                            )
                                        )
                                    )
                                  right: 
                                    (BoolBinary
                                      op_id: BoolBinary_GlobDEqual
                                      left: {(DQ (${ VSub_Name MASTER_OS_DISTRIBUTION))}
                                      right: {(DQ (ubuntu))}
                                    )
                                )
                            )
                            (DBracket
                              expr: 
                                (LogicalOr
                                  left: 
                                    (LogicalAnd
                                      left: 
                                        (BoolBinary
                                          op_id: BoolBinary_GlobDEqual
                                          left: {(DQ (${ VSub_Name master))}
                                          right: {(DQ (false))}
                                        )
                                      right: 
                                        (LogicalOr
                                          left: 
                                            (BoolBinary
                                              op_id: BoolBinary_GlobDEqual
                                              left: {(DQ (${ VSub_Name NODE_OS_DISTRIBUTION))}
                                              right: {(DQ (trusty))}
                                            )
                                          right: 
                                            (LogicalOr
                                              left: 
                                                (BoolBinary
                                                  op_id: BoolBinary_GlobDEqual
                                                  left: {(DQ (${ VSub_Name NODE_OS_DISTRIBUTION))}
                                                  right: {(DQ (gci))}
                                                )
                                              right: 
                                                (BoolBinary
                                                  op_id: BoolBinary_GlobDEqual
                                                  left: {(DQ (${ VSub_Name NODE_OS_DISTRIBUTION))}
                                                  right: {(DQ (container-linux))}
                                                )
                                            )
                                        )
                                    )
                                  right: 
                                    (BoolBinary
                                      op_id: BoolBinary_GlobEqual
                                      left: {(DQ (${ VSub_Name NODE_OS_DISTRIBUTION))}
                                      right: {(DQ (ubuntu))}
                                    )
                                )
                            )
                          ]
                          op_id: Op_DPipe
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [5715]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('KUBE_MANIFESTS_TAR_URL: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} {(${ VSub_Name kube_manifests_tar_url)})
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [5722 5728]
                                ) ('\n') ('KUBE_MANIFESTS_TAR_HASH: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} {(${ VSub_Name KUBE_MANIFESTS_TAR_HASH)})
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [5731 5737]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [5718]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 5710]
                )
              ]
              spids: [16777215 5741]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name TEST_CLUSTER>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [5751 5754]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [5765]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('TEST_CLUSTER: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {(yaml-quote)} {(${ VSub_Name TEST_CLUSTER)})]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [5772 5778]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [5768]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 5760]
                )
              ]
              spids: [16777215 5782]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name KUBELET_TEST_ARGS>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [5792 5795]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [5806]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('KUBELET_TEST_ARGS: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {(yaml-quote)} {(${ VSub_Name KUBELET_TEST_ARGS)})]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [5813 5819]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [5809]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 5801]
                )
              ]
              spids: [16777215 5823]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name NODE_KUBELET_TEST_ARGS>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [5833 5836]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [5847]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('NODE_KUBELET_TEST_ARGS: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} {(${ VSub_Name NODE_KUBELET_TEST_ARGS)})
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [5854 5860]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [5850]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 5842]
                )
              ]
              spids: [16777215 5864]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name MASTER_KUBELET_TEST_ARGS>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [5874 5877]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [5888]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('MASTER_KUBELET_TEST_ARGS: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} {(${ VSub_Name MASTER_KUBELET_TEST_ARGS)})
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [5895 5901]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [5891]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 5883]
                )
              ]
              spids: [16777215 5905]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name KUBELET_TEST_LOG_LEVEL>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [5915 5918]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [5929]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('KUBELET_TEST_LOG_LEVEL: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} {(${ VSub_Name KUBELET_TEST_LOG_LEVEL)})
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [5936 5942]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [5932]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 5924]
                )
              ]
              spids: [16777215 5946]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name DOCKER_TEST_LOG_LEVEL>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [5956 5959]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [5970]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('DOCKER_TEST_LOG_LEVEL: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} {(${ VSub_Name DOCKER_TEST_LOG_LEVEL)})
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [5977 5983]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [5973]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 5965]
                )
              ]
              spids: [16777215 5987]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name DOCKER_LOG_DRIVER>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [5997 6000]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [6011]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('DOCKER_LOG_DRIVER: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {(yaml-quote)} {(${ VSub_Name DOCKER_LOG_DRIVER)})]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6018 6024]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [6014]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 6006]
                )
              ]
              spids: [16777215 6028]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name DOCKER_LOG_MAX_SIZE>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [6038 6041]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [6052]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('DOCKER_LOG_MAX_SIZE: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} {(${ VSub_Name DOCKER_LOG_MAX_SIZE)})
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6059 6065]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [6055]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 6047]
                )
              ]
              spids: [16777215 6069]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name DOCKER_LOG_MAX_FILE>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [6079 6082]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [6093]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('DOCKER_LOG_MAX_FILE: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} {(${ VSub_Name DOCKER_LOG_MAX_FILE)})
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6100 6106]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [6096]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 6088]
                )
              ]
              spids: [16777215 6110]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name ENABLE_CUSTOM_METRICS>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [6120 6123]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [6134]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('ENABLE_CUSTOM_METRICS: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} {(${ VSub_Name ENABLE_CUSTOM_METRICS)})
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6141 6147]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [6137]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 6129]
                )
              ]
              spids: [16777215 6151]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name ENABLE_METADATA_PROXY>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [6161 6164]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [6175]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('ENABLE_METADATA_PROXY: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} {(${ VSub_Name ENABLE_METADATA_PROXY)})
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6182 6188]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [6178]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 6170]
                )
              ]
              spids: [16777215 6192]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name KUBE_FIREWALL_METADATA_SERVER>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [6202 6205]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [6216]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('KUBE_FIREWALL_METADATA_SERVER: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {(${ VSub_Name KUBE_FIREWALL_METADATA_SERVER)}
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6223 6229]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [6219]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 6211]
                )
              ]
              spids: [16777215 6233]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name FEATURE_GATES>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [6243 6246]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [6257]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('FEATURE_GATES: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {(yaml-quote)} {(${ VSub_Name FEATURE_GATES)})]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6264 6270]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [6260]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 6252]
                )
              ]
              spids: [16777215 6274]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name ROTATE_CERTIFICATES>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [6284 6287]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [6298]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('ROTATE_CERTIFICATES: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} {(${ VSub_Name ROTATE_CERTIFICATES)})
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6305 6311]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [6301]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 6293]
                )
              ]
              spids: [16777215 6315]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (AndOr
                          children: [
                            (DBracket
                              expr: 
                                (LogicalAnd
                                  left: 
                                    (BoolBinary
                                      op_id: BoolBinary_GlobDEqual
                                      left: {(DQ (${ VSub_Name master))}
                                      right: {(DQ (true))}
                                    )
                                  right: 
                                    (BoolBinary
                                      op_id: BoolBinary_GlobDEqual
                                      left: {(DQ (${ VSub_Name MASTER_OS_DISTRIBUTION))}
                                      right: {(DQ (gci))}
                                    )
                                )
                            )
                            (DBracket
                              expr: 
                                (LogicalAnd
                                  left: 
                                    (BoolBinary
                                      op_id: BoolBinary_GlobDEqual
                                      left: {(DQ (${ VSub_Name master))}
                                      right: {(DQ (false))}
                                    )
                                  right: 
                                    (BoolBinary
                                      op_id: BoolBinary_GlobDEqual
                                      left: {(DQ (${ VSub_Name NODE_OS_DISTRIBUTION))}
                                      right: {(DQ (gci))}
                                    )
                                )
                            )
                          ]
                          op_id: Op_DPipe
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [6389]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('VOLUME_PLUGIN_DIR: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name VOLUME_PLUGIN_DIR>
                                              suffix_op: 
                                                (StringUnary
                                                  op_id: VTest_ColonHyphen
                                                  arg_word: 
                                                    {(Lit_Slash /) (etc) (Lit_Slash /) (srv) 
                                                      (Lit_Slash /) (kubernetes) (Lit_Slash /) (kubelet-plugins) (Lit_Slash /) (volume) (Lit_Slash /) (exec)
                                                    }
                                                )
                                              spids: [6399 6414]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6396 6415]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [6392]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 6384]
                )
              ]
              spids: [16777215 6419]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name PROVIDER_VARS>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [6430 6433]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_Local
                      pairs: [(assign_pair lhs:(LhsName name:var_name) op:Equal spids:[6444])]
                      spids: [6442]
                    )
                    (Assignment
                      keyword: Assign_Local
                      pairs: [(assign_pair lhs:(LhsName name:var_value) op:Equal spids:[6449])]
                      spids: [6447]
                    )
                    (ForEach
                      iter_name: var_name
                      iter_words: [{(${ VSub_Name PROVIDER_VARS)}]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (C {(eval)} 
                              {
                                (DQ ('local var_value=') 
                                  (EscapedLiteralPart
                                    token: <Lit_EscapedChar '\\$'>
                                  ) ('(yaml-quote ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{') (${ VSub_Name var_name) ('})')
                                )
                              }
                            )
                            (SimpleCommand
                              words: [{(cat)}]
                              redirects: [
                                (Redir
                                  op_id: Redir_DGreat
                                  fd: 16777215
                                  arg_word: {($ VSub_Name '$file')}
                                  spids: [6484]
                                )
                                (HereDoc
                                  op_id: Redir_DLess
                                  fd: 16777215
                                  body: 
                                    {
                                      (DQ (${ VSub_Name var_name) (': ') (${ VSub_Name var_value) ('\n'))
                                    }
                                  do_expansion: True
                                  here_end: EOF
                                  was_filled: True
                                  spids: [6487]
                                )
                              ]
                            )
                          ]
                          spids: [6464 6500]
                        )
                      spids: [6458 6462]
                    )
                  ]
                  spids: [16777215 6439]
                )
              ]
              spids: [16777215 6503]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolBinary
                              op_id: BoolBinary_GlobDEqual
                              left: {(DQ (${ VSub_Name master))}
                              right: {(DQ (true))}
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [6535]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('KUBERNETES_MASTER: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {(yaml-quote)} {(DQ (true))})]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6542 6548]
                                ) ('\n') ('KUBE_USER: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {(yaml-quote)} {(${ VSub_Name KUBE_USER)})]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6551 6557]
                                ) ('\n') ('KUBE_PASSWORD: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {(yaml-quote)} {(${ VSub_Name KUBE_PASSWORD)})]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6560 6566]
                                ) ('\n') ('KUBE_BEARER_TOKEN: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {(yaml-quote)} {(${ VSub_Name KUBE_BEARER_TOKEN)})]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6569 6575]
                                ) ('\n') ('MASTER_CERT: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name MASTER_CERT_BASE64>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                              spids: [6581 6584]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6578 6585]
                                ) ('\n') ('MASTER_KEY: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name MASTER_KEY_BASE64>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                              spids: [6591 6594]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6588 6595]
                                ) ('\n') ('KUBECFG_CERT: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name KUBECFG_CERT_BASE64>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                              spids: [6601 6604]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6598 6605]
                                ) ('\n') ('KUBECFG_KEY: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name KUBECFG_KEY_BASE64>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                              spids: [6611 6614]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6608 6615]
                                ) ('\n') ('KUBELET_APISERVER: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name KUBELET_APISERVER>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                              spids: [6621 6624]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6618 6625]
                                ) ('\n') ('ENABLE_MANIFEST_URL: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name ENABLE_MANIFEST_URL>
                                              suffix_op: 
                                                (StringUnary
                                                  op_id: VTest_ColonHyphen
                                                  arg_word: {(false)}
                                                )
                                              spids: [6631 6635]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6628 6636]
                                ) ('\n') ('MANIFEST_URL: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name MANIFEST_URL>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                              spids: [6642 6645]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6639 6646]
                                ) ('\n') ('MANIFEST_URL_HEADER: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name MANIFEST_URL_HEADER>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                              spids: [6652 6655]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6649 6656]
                                ) ('\n') ('NUM_NODES: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {(yaml-quote)} {(${ VSub_Name NUM_NODES)})]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6659 6665]
                                ) ('\n') ('STORAGE_BACKEND: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name STORAGE_BACKEND>
                                              suffix_op: 
                                                (StringUnary
                                                  op_id: VTest_ColonHyphen
                                                  arg_word: {(etcd3)}
                                                )
                                              spids: [6671 6675]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6668 6676]
                                ) ('\n') ('STORAGE_MEDIA_TYPE: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name STORAGE_MEDIA_TYPE>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                              spids: [6682 6685]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6679 6686]
                                ) ('\n') ('ENABLE_GARBAGE_COLLECTOR: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name ENABLE_GARBAGE_COLLECTOR>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                              spids: [6692 6695]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6689 6696]
                                ) ('\n') ('ENABLE_LEGACY_ABAC: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name ENABLE_LEGACY_ABAC>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                              spids: [6702 6705]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6699 6706]
                                ) ('\n') ('MASTER_ADVERTISE_ADDRESS: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name MASTER_ADVERTISE_ADDRESS>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                              spids: [6712 6715]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6709 6716]
                                ) ('\n') ('ETCD_CA_KEY: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name ETCD_CA_KEY_BASE64>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                              spids: [6722 6725]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6719 6726]
                                ) ('\n') ('ETCD_CA_CERT: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name ETCD_CA_CERT_BASE64>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                              spids: [6732 6735]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6729 6736]
                                ) ('\n') ('ETCD_PEER_KEY: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name ETCD_PEER_KEY_BASE64>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                              spids: [6742 6745]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6739 6746]
                                ) ('\n') ('ETCD_PEER_CERT: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name ETCD_PEER_CERT_BASE64>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                              spids: [6752 6755]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [6749 6756]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [6538]
                        )
                      ]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(-n)} 
                                  {
                                    (DQ 
                                      (BracedVarSub
                                        token: <VSub_Name KUBE_APISERVER_REQUEST_TIMEOUT_SEC>
                                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                        spids: [6775 6778]
                                      )
                                    )
                                  } {(Lit_Other ']')}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (SimpleCommand
                              words: [{(cat)}]
                              redirects: [
                                (Redir
                                  op_id: Redir_DGreat
                                  fd: 16777215
                                  arg_word: {($ VSub_Name '$file')}
                                  spids: [6789]
                                )
                                (HereDoc
                                  op_id: Redir_DLess
                                  fd: 16777215
                                  body: 
                                    {
                                      (DQ ('KUBE_APISERVER_REQUEST_TIMEOUT_SEC: ') 
                                        (CommandSubPart
                                          command_list: 
                                            (CommandList
                                              children: [
                                                (C {(yaml-quote)} 
                                                  {
                                                    (${ VSub_Name KUBE_APISERVER_REQUEST_TIMEOUT_SEC)
                                                  }
                                                )
                                              ]
                                            )
                                          left_token: <Left_CommandSub '$('>
                                          spids: [6796 6802]
                                        ) ('\n')
                                      )
                                    }
                                  do_expansion: True
                                  here_end: EOF
                                  was_filled: True
                                  spids: [6792]
                                )
                              ]
                            )
                          ]
                          spids: [16777215 6784]
                        )
                      ]
                      spids: [16777215 6806]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(-n)} 
                                  {
                                    (DQ 
                                      (BracedVarSub
                                        token: <VSub_Name ETCD_IMAGE>
                                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                        spids: [6820 6823]
                                      )
                                    )
                                  } {(Lit_Other ']')}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (SimpleCommand
                              words: [{(cat)}]
                              redirects: [
                                (Redir
                                  op_id: Redir_DGreat
                                  fd: 16777215
                                  arg_word: {($ VSub_Name '$file')}
                                  spids: [6834]
                                )
                                (HereDoc
                                  op_id: Redir_DLess
                                  fd: 16777215
                                  body: 
                                    {
                                      (DQ ('ETCD_IMAGE: ') 
                                        (CommandSubPart
                                          command_list: 
                                            (CommandList
                                              children: [(C {(yaml-quote)} {(${ VSub_Name ETCD_IMAGE)})]
                                            )
                                          left_token: <Left_CommandSub '$('>
                                          spids: [6841 6847]
                                        ) ('\n')
                                      )
                                    }
                                  do_expansion: True
                                  here_end: EOF
                                  was_filled: True
                                  spids: [6837]
                                )
                              ]
                            )
                          ]
                          spids: [16777215 6829]
                        )
                      ]
                      spids: [16777215 6851]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(-n)} 
                                  {
                                    (DQ 
                                      (BracedVarSub
                                        token: <VSub_Name ETCD_DOCKER_REPOSITORY>
                                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                        spids: [6865 6868]
                                      )
                                    )
                                  } {(Lit_Other ']')}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (SimpleCommand
                              words: [{(cat)}]
                              redirects: [
                                (Redir
                                  op_id: Redir_DGreat
                                  fd: 16777215
                                  arg_word: {($ VSub_Name '$file')}
                                  spids: [6879]
                                )
                                (HereDoc
                                  op_id: Redir_DLess
                                  fd: 16777215
                                  body: 
                                    {
                                      (DQ ('ETCD_DOCKER_REPOSITORY: ') 
                                        (CommandSubPart
                                          command_list: 
                                            (CommandList
                                              children: [
                                                (C {(yaml-quote)} 
                                                  {(${ VSub_Name ETCD_DOCKER_REPOSITORY)}
                                                )
                                              ]
                                            )
                                          left_token: <Left_CommandSub '$('>
                                          spids: [6886 6892]
                                        ) ('\n')
                                      )
                                    }
                                  do_expansion: True
                                  here_end: EOF
                                  was_filled: True
                                  spids: [6882]
                                )
                              ]
                            )
                          ]
                          spids: [16777215 6874]
                        )
                      ]
                      spids: [16777215 6896]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(-n)} 
                                  {
                                    (DQ 
                                      (BracedVarSub
                                        token: <VSub_Name ETCD_VERSION>
                                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                        spids: [6918 6921]
                                      )
                                    )
                                  } {(Lit_Other ']')}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (SimpleCommand
                              words: [{(cat)}]
                              redirects: [
                                (Redir
                                  op_id: Redir_DGreat
                                  fd: 16777215
                                  arg_word: {($ VSub_Name '$file')}
                                  spids: [6932]
                                )
                                (HereDoc
                                  op_id: Redir_DLess
                                  fd: 16777215
                                  body: 
                                    {
                                      (DQ ('ETCD_VERSION: ') 
                                        (CommandSubPart
                                          command_list: 
                                            (CommandList
                                              children: [
                                                (C {(yaml-quote)} {(${ VSub_Name ETCD_VERSION)})
                                              ]
                                            )
                                          left_token: <Left_CommandSub '$('>
                                          spids: [6939 6945]
                                        ) ('\n')
                                      )
                                    }
                                  do_expansion: True
                                  here_end: EOF
                                  was_filled: True
                                  spids: [6935]
                                )
                              ]
                            )
                          ]
                          spids: [16777215 6927]
                        )
                      ]
                      spids: [16777215 6949]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(-n)} 
                                  {
                                    (DQ 
                                      (BracedVarSub
                                        token: <VSub_Name APISERVER_TEST_ARGS>
                                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                        spids: [6959 6962]
                                      )
                                    )
                                  } {(Lit_Other ']')}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (SimpleCommand
                              words: [{(cat)}]
                              redirects: [
                                (Redir
                                  op_id: Redir_DGreat
                                  fd: 16777215
                                  arg_word: {($ VSub_Name '$file')}
                                  spids: [6973]
                                )
                                (HereDoc
                                  op_id: Redir_DLess
                                  fd: 16777215
                                  body: 
                                    {
                                      (DQ ('APISERVER_TEST_ARGS: ') 
                                        (CommandSubPart
                                          command_list: 
                                            (CommandList
                                              children: [
                                                (C {(yaml-quote)} {(${ VSub_Name APISERVER_TEST_ARGS)})
                                              ]
                                            )
                                          left_token: <Left_CommandSub '$('>
                                          spids: [6980 6986]
                                        ) ('\n')
                                      )
                                    }
                                  do_expansion: True
                                  here_end: EOF
                                  was_filled: True
                                  spids: [6976]
                                )
                              ]
                            )
                          ]
                          spids: [16777215 6968]
                        )
                      ]
                      spids: [16777215 6990]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(-n)} 
                                  {
                                    (DQ 
                                      (BracedVarSub
                                        token: <VSub_Name APISERVER_TEST_LOG_LEVEL>
                                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                        spids: [7000 7003]
                                      )
                                    )
                                  } {(Lit_Other ']')}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (SimpleCommand
                              words: [{(cat)}]
                              redirects: [
                                (Redir
                                  op_id: Redir_DGreat
                                  fd: 16777215
                                  arg_word: {($ VSub_Name '$file')}
                                  spids: [7014]
                                )
                                (HereDoc
                                  op_id: Redir_DLess
                                  fd: 16777215
                                  body: 
                                    {
                                      (DQ ('APISERVER_TEST_LOG_LEVEL: ') 
                                        (CommandSubPart
                                          command_list: 
                                            (CommandList
                                              children: [
                                                (C {(yaml-quote)} 
                                                  {(${ VSub_Name APISERVER_TEST_LOG_LEVEL)}
                                                )
                                              ]
                                            )
                                          left_token: <Left_CommandSub '$('>
                                          spids: [7021 7027]
                                        ) ('\n')
                                      )
                                    }
                                  do_expansion: True
                                  here_end: EOF
                                  was_filled: True
                                  spids: [7017]
                                )
                              ]
                            )
                          ]
                          spids: [16777215 7009]
                        )
                      ]
                      spids: [16777215 7031]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(-n)} 
                                  {
                                    (DQ 
                                      (BracedVarSub
                                        token: <VSub_Name CONTROLLER_MANAGER_TEST_ARGS>
                                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                        spids: [7041 7044]
                                      )
                                    )
                                  } {(Lit_Other ']')}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (SimpleCommand
                              words: [{(cat)}]
                              redirects: [
                                (Redir
                                  op_id: Redir_DGreat
                                  fd: 16777215
                                  arg_word: {($ VSub_Name '$file')}
                                  spids: [7055]
                                )
                                (HereDoc
                                  op_id: Redir_DLess
                                  fd: 16777215
                                  body: 
                                    {
                                      (DQ ('CONTROLLER_MANAGER_TEST_ARGS: ') 
                                        (CommandSubPart
                                          command_list: 
                                            (CommandList
                                              children: [
                                                (C {(yaml-quote)} 
                                                  {(${ VSub_Name CONTROLLER_MANAGER_TEST_ARGS)}
                                                )
                                              ]
                                            )
                                          left_token: <Left_CommandSub '$('>
                                          spids: [7062 7068]
                                        ) ('\n')
                                      )
                                    }
                                  do_expansion: True
                                  here_end: EOF
                                  was_filled: True
                                  spids: [7058]
                                )
                              ]
                            )
                          ]
                          spids: [16777215 7050]
                        )
                      ]
                      spids: [16777215 7072]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(-n)} 
                                  {
                                    (DQ 
                                      (BracedVarSub
                                        token: <VSub_Name CONTROLLER_MANAGER_TEST_LOG_LEVEL>
                                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                        spids: [7082 7085]
                                      )
                                    )
                                  } {(Lit_Other ']')}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (SimpleCommand
                              words: [{(cat)}]
                              redirects: [
                                (Redir
                                  op_id: Redir_DGreat
                                  fd: 16777215
                                  arg_word: {($ VSub_Name '$file')}
                                  spids: [7096]
                                )
                                (HereDoc
                                  op_id: Redir_DLess
                                  fd: 16777215
                                  body: 
                                    {
                                      (DQ ('CONTROLLER_MANAGER_TEST_LOG_LEVEL: ') 
                                        (CommandSubPart
                                          command_list: 
                                            (CommandList
                                              children: [
                                                (C {(yaml-quote)} 
                                                  {(${ VSub_Name CONTROLLER_MANAGER_TEST_LOG_LEVEL)}
                                                )
                                              ]
                                            )
                                          left_token: <Left_CommandSub '$('>
                                          spids: [7103 7109]
                                        ) ('\n')
                                      )
                                    }
                                  do_expansion: True
                                  here_end: EOF
                                  was_filled: True
                                  spids: [7099]
                                )
                              ]
                            )
                          ]
                          spids: [16777215 7091]
                        )
                      ]
                      spids: [16777215 7113]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(-n)} 
                                  {
                                    (DQ 
                                      (BracedVarSub
                                        token: <VSub_Name SCHEDULER_TEST_ARGS>
                                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                        spids: [7123 7126]
                                      )
                                    )
                                  } {(Lit_Other ']')}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (SimpleCommand
                              words: [{(cat)}]
                              redirects: [
                                (Redir
                                  op_id: Redir_DGreat
                                  fd: 16777215
                                  arg_word: {($ VSub_Name '$file')}
                                  spids: [7137]
                                )
                                (HereDoc
                                  op_id: Redir_DLess
                                  fd: 16777215
                                  body: 
                                    {
                                      (DQ ('SCHEDULER_TEST_ARGS: ') 
                                        (CommandSubPart
                                          command_list: 
                                            (CommandList
                                              children: [
                                                (C {(yaml-quote)} {(${ VSub_Name SCHEDULER_TEST_ARGS)})
                                              ]
                                            )
                                          left_token: <Left_CommandSub '$('>
                                          spids: [7144 7150]
                                        ) ('\n')
                                      )
                                    }
                                  do_expansion: True
                                  here_end: EOF
                                  was_filled: True
                                  spids: [7140]
                                )
                              ]
                            )
                          ]
                          spids: [16777215 7132]
                        )
                      ]
                      spids: [16777215 7154]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(-n)} 
                                  {
                                    (DQ 
                                      (BracedVarSub
                                        token: <VSub_Name SCHEDULER_TEST_LOG_LEVEL>
                                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                        spids: [7164 7167]
                                      )
                                    )
                                  } {(Lit_Other ']')}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (SimpleCommand
                              words: [{(cat)}]
                              redirects: [
                                (Redir
                                  op_id: Redir_DGreat
                                  fd: 16777215
                                  arg_word: {($ VSub_Name '$file')}
                                  spids: [7178]
                                )
                                (HereDoc
                                  op_id: Redir_DLess
                                  fd: 16777215
                                  body: 
                                    {
                                      (DQ ('SCHEDULER_TEST_LOG_LEVEL: ') 
                                        (CommandSubPart
                                          command_list: 
                                            (CommandList
                                              children: [
                                                (C {(yaml-quote)} 
                                                  {(${ VSub_Name SCHEDULER_TEST_LOG_LEVEL)}
                                                )
                                              ]
                                            )
                                          left_token: <Left_CommandSub '$('>
                                          spids: [7185 7191]
                                        ) ('\n')
                                      )
                                    }
                                  do_expansion: True
                                  here_end: EOF
                                  was_filled: True
                                  spids: [7181]
                                )
                              ]
                            )
                          ]
                          spids: [16777215 7173]
                        )
                      ]
                      spids: [16777215 7195]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(-n)} 
                                  {
                                    (DQ 
                                      (BracedVarSub
                                        token: <VSub_Name INITIAL_ETCD_CLUSTER>
                                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                        spids: [7205 7208]
                                      )
                                    )
                                  } {(Lit_Other ']')}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (SimpleCommand
                              words: [{(cat)}]
                              redirects: [
                                (Redir
                                  op_id: Redir_DGreat
                                  fd: 16777215
                                  arg_word: {($ VSub_Name '$file')}
                                  spids: [7219]
                                )
                                (HereDoc
                                  op_id: Redir_DLess
                                  fd: 16777215
                                  body: 
                                    {
                                      (DQ ('INITIAL_ETCD_CLUSTER: ') 
                                        (CommandSubPart
                                          command_list: 
                                            (CommandList
                                              children: [
                                                (C {(yaml-quote)} {(${ VSub_Name INITIAL_ETCD_CLUSTER)})
                                              ]
                                            )
                                          left_token: <Left_CommandSub '$('>
                                          spids: [7226 7232]
                                        ) ('\n')
                                      )
                                    }
                                  do_expansion: True
                                  here_end: EOF
                                  was_filled: True
                                  spids: [7222]
                                )
                              ]
                            )
                          ]
                          spids: [16777215 7214]
                        )
                      ]
                      spids: [16777215 7236]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(-n)} 
                                  {
                                    (DQ 
                                      (BracedVarSub
                                        token: <VSub_Name INITIAL_ETCD_CLUSTER_STATE>
                                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                        spids: [7246 7249]
                                      )
                                    )
                                  } {(Lit_Other ']')}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (SimpleCommand
                              words: [{(cat)}]
                              redirects: [
                                (Redir
                                  op_id: Redir_DGreat
                                  fd: 16777215
                                  arg_word: {($ VSub_Name '$file')}
                                  spids: [7260]
                                )
                                (HereDoc
                                  op_id: Redir_DLess
                                  fd: 16777215
                                  body: 
                                    {
                                      (DQ ('INITIAL_ETCD_CLUSTER_STATE: ') 
                                        (CommandSubPart
                                          command_list: 
                                            (CommandList
                                              children: [
                                                (C {(yaml-quote)} 
                                                  {(${ VSub_Name INITIAL_ETCD_CLUSTER_STATE)}
                                                )
                                              ]
                                            )
                                          left_token: <Left_CommandSub '$('>
                                          spids: [7267 7273]
                                        ) ('\n')
                                      )
                                    }
                                  do_expansion: True
                                  here_end: EOF
                                  was_filled: True
                                  spids: [7263]
                                )
                              ]
                            )
                          ]
                          spids: [16777215 7255]
                        )
                      ]
                      spids: [16777215 7277]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(-n)} 
                                  {
                                    (DQ 
                                      (BracedVarSub
                                        token: <VSub_Name ETCD_QUORUM_READ>
                                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                        spids: [7287 7290]
                                      )
                                    )
                                  } {(Lit_Other ']')}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (SimpleCommand
                              words: [{(cat)}]
                              redirects: [
                                (Redir
                                  op_id: Redir_DGreat
                                  fd: 16777215
                                  arg_word: {($ VSub_Name '$file')}
                                  spids: [7301]
                                )
                                (HereDoc
                                  op_id: Redir_DLess
                                  fd: 16777215
                                  body: 
                                    {
                                      (DQ ('ETCD_QUORUM_READ: ') 
                                        (CommandSubPart
                                          command_list: 
                                            (CommandList
                                              children: [
                                                (C {(yaml-quote)} {(${ VSub_Name ETCD_QUORUM_READ)})
                                              ]
                                            )
                                          left_token: <Left_CommandSub '$('>
                                          spids: [7308 7314]
                                        ) ('\n')
                                      )
                                    }
                                  do_expansion: True
                                  here_end: EOF
                                  was_filled: True
                                  spids: [7304]
                                )
                              ]
                            )
                          ]
                          spids: [16777215 7296]
                        )
                      ]
                      spids: [16777215 7318]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(-n)} 
                                  {
                                    (DQ 
                                      (BracedVarSub
                                        token: <VSub_Name CLUSTER_SIGNING_DURATION>
                                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                        spids: [7328 7331]
                                      )
                                    )
                                  } {(Lit_Other ']')}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (SimpleCommand
                              words: [{(cat)}]
                              redirects: [
                                (Redir
                                  op_id: Redir_DGreat
                                  fd: 16777215
                                  arg_word: {($ VSub_Name '$file')}
                                  spids: [7342]
                                )
                                (HereDoc
                                  op_id: Redir_DLess
                                  fd: 16777215
                                  body: 
                                    {
                                      (DQ ('CLUSTER_SIGNING_DURATION: ') 
                                        (CommandSubPart
                                          command_list: 
                                            (CommandList
                                              children: [
                                                (C {(yaml-quote)} 
                                                  {(${ VSub_Name CLUSTER_SIGNING_DURATION)}
                                                )
                                              ]
                                            )
                                          left_token: <Left_CommandSub '$('>
                                          spids: [7349 7355]
                                        ) ('\n')
                                      )
                                    }
                                  do_expansion: True
                                  here_end: EOF
                                  was_filled: True
                                  spids: [7345]
                                )
                              ]
                            )
                          ]
                          spids: [16777215 7337]
                        )
                      ]
                      spids: [16777215 7359]
                    )
                  ]
                  spids: [16777215 6526]
                )
              ]
              else_action: [
                (SimpleCommand
                  words: [{(cat)}]
                  redirects: [
                    (Redir
                      op_id: Redir_DGreat
                      fd: 16777215
                      arg_word: {($ VSub_Name '$file')}
                      spids: [7372]
                    )
                    (HereDoc
                      op_id: Redir_DLess
                      fd: 16777215
                      body: 
                        {
                          (DQ ('KUBERNETES_MASTER: ') 
                            (CommandSubPart
                              command_list: 
                                (CommandList
                                  children: [(C {(yaml-quote)} {(DQ (false))})]
                                )
                              left_token: <Left_CommandSub '$('>
                              spids: [7379 7385]
                            ) ('\n') ('ZONE: ') 
                            (CommandSubPart
                              command_list: 
                                (CommandList
                                  children: [(C {(yaml-quote)} {(${ VSub_Name ZONE)})]
                                )
                              left_token: <Left_CommandSub '$('>
                              spids: [7388 7394]
                            ) ('\n') ('EXTRA_DOCKER_OPTS: ') 
                            (CommandSubPart
                              command_list: 
                                (CommandList
                                  children: [
                                    (C {(yaml-quote)} 
                                      {
                                        (BracedVarSub
                                          token: <VSub_Name EXTRA_DOCKER_OPTS>
                                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                          spids: [7400 7403]
                                        )
                                      }
                                    )
                                  ]
                                )
                              left_token: <Left_CommandSub '$('>
                              spids: [7397 7404]
                            ) ('\n')
                          )
                        }
                      do_expansion: True
                      here_end: EOF
                      was_filled: True
                      spids: [7375]
                    )
                  ]
                )
                (If
                  arms: [
                    (if_arm
                      cond: [
                        (Sentence
                          child: 
                            (C {(Lit_Other '[')} {(-n)} 
                              {
                                (DQ 
                                  (BracedVarSub
                                    token: <VSub_Name KUBEPROXY_TEST_ARGS>
                                    suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                    spids: [7415 7418]
                                  )
                                )
                              } {(Lit_Other ']')}
                            )
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (SimpleCommand
                          words: [{(cat)}]
                          redirects: [
                            (Redir
                              op_id: Redir_DGreat
                              fd: 16777215
                              arg_word: {($ VSub_Name '$file')}
                              spids: [7429]
                            )
                            (HereDoc
                              op_id: Redir_DLess
                              fd: 16777215
                              body: 
                                {
                                  (DQ ('KUBEPROXY_TEST_ARGS: ') 
                                    (CommandSubPart
                                      command_list: 
                                        (CommandList
                                          children: [
                                            (C {(yaml-quote)} {(${ VSub_Name KUBEPROXY_TEST_ARGS)})
                                          ]
                                        )
                                      left_token: <Left_CommandSub '$('>
                                      spids: [7436 7442]
                                    ) ('\n')
                                  )
                                }
                              do_expansion: True
                              here_end: EOF
                              was_filled: True
                              spids: [7432]
                            )
                          ]
                        )
                      ]
                      spids: [16777215 7424]
                    )
                  ]
                  spids: [16777215 7446]
                )
                (If
                  arms: [
                    (if_arm
                      cond: [
                        (Sentence
                          child: 
                            (C {(Lit_Other '[')} {(-n)} 
                              {
                                (DQ 
                                  (BracedVarSub
                                    token: <VSub_Name KUBEPROXY_TEST_LOG_LEVEL>
                                    suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                    spids: [7456 7459]
                                  )
                                )
                              } {(Lit_Other ']')}
                            )
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (SimpleCommand
                          words: [{(cat)}]
                          redirects: [
                            (Redir
                              op_id: Redir_DGreat
                              fd: 16777215
                              arg_word: {($ VSub_Name '$file')}
                              spids: [7470]
                            )
                            (HereDoc
                              op_id: Redir_DLess
                              fd: 16777215
                              body: 
                                {
                                  (DQ ('KUBEPROXY_TEST_LOG_LEVEL: ') 
                                    (CommandSubPart
                                      command_list: 
                                        (CommandList
                                          children: [
                                            (C {(yaml-quote)} {(${ VSub_Name KUBEPROXY_TEST_LOG_LEVEL)})
                                          ]
                                        )
                                      left_token: <Left_CommandSub '$('>
                                      spids: [7477 7483]
                                    ) ('\n')
                                  )
                                }
                              do_expansion: True
                              here_end: EOF
                              was_filled: True
                              spids: [7473]
                            )
                          ]
                        )
                      ]
                      spids: [16777215 7465]
                    )
                  ]
                  spids: [16777215 7487]
                )
              ]
              spids: [7363 7490]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name NODE_LABELS>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [7500 7503]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [7514]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('NODE_LABELS: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {(yaml-quote)} {(${ VSub_Name NODE_LABELS)})]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [7521 7527]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [7517]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 7509]
                )
              ]
              spids: [16777215 7531]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name EVICTION_HARD>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [7541 7544]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [7555]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('EVICTION_HARD: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {(yaml-quote)} {(${ VSub_Name EVICTION_HARD)})]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [7562 7568]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [7558]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 7550]
                )
              ]
              spids: [16777215 7572]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (AndOr
                          children: [
                            (DBracket
                              expr: 
                                (LogicalAnd
                                  left: 
                                    (BoolBinary
                                      op_id: BoolBinary_GlobDEqual
                                      left: {(DQ (${ VSub_Name master))}
                                      right: {(DQ (true))}
                                    )
                                  right: 
                                    (BoolBinary
                                      op_id: BoolBinary_GlobDEqual
                                      left: {(DQ (${ VSub_Name MASTER_OS_DISTRIBUTION))}
                                      right: {(DQ (container-linux))}
                                    )
                                )
                            )
                            (DBracket
                              expr: 
                                (LogicalAnd
                                  left: 
                                    (BoolBinary
                                      op_id: BoolBinary_GlobDEqual
                                      left: {(DQ (${ VSub_Name master))}
                                      right: {(DQ (false))}
                                    )
                                  right: 
                                    (BoolBinary
                                      op_id: BoolBinary_GlobDEqual
                                      left: {(DQ (${ VSub_Name NODE_OS_DISTRIBUTION))}
                                      right: {(DQ (container-linux))}
                                    )
                                )
                            )
                          ]
                          op_id: Op_DPipe
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [7651]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('KUBERNETES_CONTAINER_RUNTIME: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name CONTAINER_RUNTIME>
                                              suffix_op: 
                                                (StringUnary
                                                  op_id: VTest_ColonHyphen
                                                  arg_word: {(rkt)}
                                                )
                                              spids: [7661 7665]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [7658 7666]
                                ) ('\n') ('RKT_VERSION: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name RKT_VERSION>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                              spids: [7672 7675]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [7669 7676]
                                ) ('\n') ('RKT_PATH: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name RKT_PATH>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                              spids: [7682 7685]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [7679 7686]
                                ) ('\n') ('RKT_STAGE1_IMAGE: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {
                                            (BracedVarSub
                                              token: <VSub_Name RKT_STAGE1_IMAGE>
                                              suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                                              spids: [7692 7695]
                                            )
                                          }
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [7689 7696]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [7654]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 7642]
                )
              ]
              spids: [16777215 7700]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolBinary
                              op_id: BoolBinary_GlobDEqual
                              left: {(DQ (${ VSub_Name ENABLE_CLUSTER_AUTOSCALER))}
                              right: {(DQ (true))}
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [7727]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('ENABLE_CLUSTER_AUTOSCALER: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} {(${ VSub_Name ENABLE_CLUSTER_AUTOSCALER)})
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [7734 7740]
                                ) ('\n') ('AUTOSCALER_MIG_CONFIG: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} {(${ VSub_Name AUTOSCALER_MIG_CONFIG)})
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [7743 7749]
                                ) ('\n') ('AUTOSCALER_EXPANDER_CONFIG: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} {(${ VSub_Name AUTOSCALER_EXPANDER_CONFIG)})
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [7752 7758]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [7730]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 7722]
                )
              ]
              spids: [16777215 7762]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolUnary
                              op_id: BoolUnary_n
                              child: 
                                {
                                  (DQ 
                                    (BracedVarSub
                                      token: <VSub_Name FEDERATION>
                                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                      spids: [7777 7780]
                                    )
                                  )
                                }
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [7791]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('FEDERATION: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {(yaml-quote)} {(${ VSub_Name FEDERATION)})]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [7798 7804]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [7794]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 7786]
                )
              ]
              spids: [16777215 7808]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name FEDERATION_NAME>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [7818 7821]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [7832]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('FEDERATION_NAME: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {(yaml-quote)} {(${ VSub_Name FEDERATION_NAME)})]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [7839 7845]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [7835]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 7827]
                )
              ]
              spids: [16777215 7849]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name DNS_ZONE_NAME>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [7859 7862]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [7873]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('DNS_ZONE_NAME: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {(yaml-quote)} {(${ VSub_Name DNS_ZONE_NAME)})]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [7880 7886]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [7876]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 7868]
                )
              ]
              spids: [16777215 7890]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-n)} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name SCHEDULING_ALGORITHM_PROVIDER>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )})
                                spids: [7900 7903]
                              )
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: 16777215
                          arg_word: {($ VSub_Name '$file')}
                          spids: [7914]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('SCHEDULING_ALGORITHM_PROVIDER: ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(yaml-quote)} 
                                          {(${ VSub_Name SCHEDULING_ALGORITHM_PROVIDER)}
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub '$('>
                                  spids: [7921 7927]
                                ) ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [7917]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 7909]
                )
              ]
              spids: [16777215 7931]
            )
          ]
          spids: [4423]
        )
      spids: [4419 4422]
    )
    (FuncDef
      name: sha1sum-file
      body: 
        (BraceGroup
          children: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (SimpleCommand
                          words: [{(which)} {(sha1sum)}]
                          redirects: [
                            (Redir
                              op_id: Redir_Great
                              fd: 16777215
                              arg_word: {(/dev/null)}
                              spids: [7951]
                            )
                            (Redir
                              op_id: Redir_GreatAnd
                              fd: 2
                              arg_word: {(1)}
                              spids: [7954]
                            )
                          ]
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Pipeline
                      children: [
                        (C {(sha1sum)} {(DQ ($ VSub_Number '$1'))})
                        (C {(awk)} {(SQ <'{ print $1 }'>)})
                      ]
                      negated: False
                    )
                  ]
                  spids: [16777215 7958]
                )
              ]
              else_action: [
                (Pipeline
                  children: [
                    (C {(shasum)} {(-a1)} {(DQ ($ VSub_Number '$1'))})
                    (C {(awk)} {(SQ <'{ print $1 }'>)})
                  ]
                  negated: False
                )
              ]
              spids: [7976 7996]
            )
          ]
          spids: [7942]
        )
      spids: [7936 7941]
    )
    (FuncDef
      name: create-certs
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              flags: [-r]
              pairs: [
                (assign_pair
                  lhs: (LhsName name:primary_cn)
                  op: Equal
                  rhs: {(DQ (${ VSub_Number 1))}
                  spids: [8102]
                )
              ]
              spids: [8098]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:octets)
                  op: Equal
                  rhs: 
                    {
                      (ArrayLiteralPart
                        words: [
                          {
                            (CommandSubPart
                              command_list: 
                                (CommandList
                                  children: [
                                    (Pipeline
                                      children: [
                                        (C {(echo)} {(DQ (${ VSub_Name SERVICE_CLUSTER_IP_RANGE))})
                                        (C {(sed)} {(-e)} {(SQ <'s|/.*||'>)} {(-e)} {(SQ <'s/\\./ /g'>)})
                                      ]
                                      negated: False
                                    )
                                  ]
                                )
                              left_token: <Left_CommandSub '$('>
                              spids: [8119 8143]
                            )
                          }
                        ]
                      )
                    }
                  spids: [8117]
                )
              ]
              spids: [8115]
            )
            (DParen
              child: 
                (BinaryAssign
                  op_id: Arith_PlusEqual
                  left: (LhsIndexedName name:octets index:(ArithWord w:{(Lit_Digits 3)}))
                  right: (ArithWord w:{(Lit_Digits 1)})
                )
            )
            (Assignment
              keyword: Assign_Local
              flags: [-r]
              pairs: [
                (assign_pair
                  lhs: (LhsName name:service_ip)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {(echo)} 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          token: <VSub_Name octets>
                                          bracket_op: (WholeArray op_id:Arith_Star)
                                          spids: [8167 8172]
                                        )
                                      )
                                    }
                                  )
                                  (C {(sed)} {(SQ <'s/ /./g'>)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [8163 8182]
                      )
                    }
                  spids: [8162]
                )
              ]
              spids: [8158]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LhsName name:sans) op:Equal rhs:{(DQ )} spids:[8187])]
              spids: [8185]
            )
            (ForEach
              iter_name: extra
              iter_words: [{($ VSub_At '$@')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (DBracket
                                  expr: (BoolUnary op_id:BoolUnary_n child:{(DQ (${ VSub_Name extra))})
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:sans)
                                  op: Equal
                                  rhs: {(DQ (${ VSub_Name sans) ('IP:') (${ VSub_Name extra) (','))}
                                  spids: [8222]
                                )
                              ]
                              spids: [8222]
                            )
                          ]
                          spids: [16777215 8219]
                        )
                      ]
                      spids: [16777215 8235]
                    )
                  ]
                  spids: [8201 8238]
                )
              spids: [8197 8199]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:sans)
                  op: Equal
                  rhs: 
                    {
                      (DQ (${ VSub_Name sans) ('IP:') (${ VSub_Name service_ip) 
                        (
',DNS:kubernetes,DNS:kubernetes.default,DNS:kubernetes.default.svc,DNS:kubernetes.default.svc.'
                        ) (${ VSub_Name DNS_DOMAIN) (',DNS:') (${ VSub_Name MASTER_NAME)
                      )
                    }
                  spids: [8241]
                )
              ]
              spids: [8241]
            )
            (C {(echo)} {(DQ ('Generating certs for alternate-names: ') (${ VSub_Name sans))})
            (C {(setup-easyrsa)})
            (SimpleCommand
              words: [{(generate-certs)}]
              more_env: [
                (env_pair
                  name: PRIMARY_CN
                  val: {(DQ (${ VSub_Name primary_cn))}
                  spids: [8276]
                )
                (env_pair name:SANS val:{(DQ (${ VSub_Name sans))} spids:[8283])
              ]
            )
            (SimpleCommand
              words: [{(generate-aggregator-certs)}]
              more_env: [
                (env_pair
                  name: AGGREGATOR_PRIMARY_CN
                  val: {(DQ (${ VSub_Name primary_cn))}
                  spids: [8293]
                )
                (env_pair
                  name: AGGREGATOR_SANS
                  val: {(DQ (${ VSub_Name sans))}
                  spids: [8300]
                )
              ]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:CERT_DIR)
                  op: Equal
                  rhs: {(DQ (${ VSub_Name KUBE_TEMP) (/easy-rsa-master/easyrsa3))}
                  spids: [8311]
                )
              ]
              spids: [8311]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:CA_KEY_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {(cat)} {(DQ (${ VSub_Name CERT_DIR) (/pki/private/ca.key))})
                                  (C {(base64)})
                                  (C {(tr)} {(-d)} {(SQ <'\\r\\n'>)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [8329 8352]
                      )
                    }
                  spids: [8328]
                )
              ]
              spids: [8328]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:CA_CERT_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {(cat)} {(DQ (${ VSub_Name CERT_DIR) (/pki/ca.crt))})
                                  (C {(base64)})
                                  (C {(tr)} {(-d)} {(SQ <'\\r\\n'>)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [8356 8379]
                      )
                    }
                  spids: [8355]
                )
              ]
              spids: [8355]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:MASTER_CERT_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {(cat)} 
                                    {
                                      (DQ (${ VSub_Name CERT_DIR) (/pki/issued/) 
                                        (${ VSub_Name MASTER_NAME) (.crt)
                                      )
                                    }
                                  )
                                  (C {(base64)})
                                  (C {(tr)} {(-d)} {(SQ <'\\r\\n'>)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [8383 8410]
                      )
                    }
                  spids: [8382]
                )
              ]
              spids: [8382]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:MASTER_KEY_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {(cat)} 
                                    {
                                      (DQ (${ VSub_Name CERT_DIR) (/pki/private/) 
                                        (${ VSub_Name MASTER_NAME) (.key)
                                      )
                                    }
                                  )
                                  (C {(base64)})
                                  (C {(tr)} {(-d)} {(SQ <'\\r\\n'>)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [8414 8441]
                      )
                    }
                  spids: [8413]
                )
              ]
              spids: [8413]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBELET_CERT_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {(cat)} {(DQ (${ VSub_Name CERT_DIR) (/pki/issued/kubelet.crt))})
                                  (C {(base64)})
                                  (C {(tr)} {(-d)} {(SQ <'\\r\\n'>)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [8445 8468]
                      )
                    }
                  spids: [8444]
                )
              ]
              spids: [8444]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBELET_KEY_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {(cat)} {(DQ (${ VSub_Name CERT_DIR) (/pki/private/kubelet.key))})
                                  (C {(base64)})
                                  (C {(tr)} {(-d)} {(SQ <'\\r\\n'>)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [8472 8495]
                      )
                    }
                  spids: [8471]
                )
              ]
              spids: [8471]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBECFG_CERT_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {(cat)} {(DQ (${ VSub_Name CERT_DIR) (/pki/issued/kubecfg.crt))})
                                  (C {(base64)})
                                  (C {(tr)} {(-d)} {(SQ <'\\r\\n'>)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [8499 8522]
                      )
                    }
                  spids: [8498]
                )
              ]
              spids: [8498]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBECFG_KEY_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {(cat)} {(DQ (${ VSub_Name CERT_DIR) (/pki/private/kubecfg.key))})
                                  (C {(base64)})
                                  (C {(tr)} {(-d)} {(SQ <'\\r\\n'>)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [8526 8549]
                      )
                    }
                  spids: [8525]
                )
              ]
              spids: [8525]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBEAPISERVER_CERT_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {(cat)} 
                                    {(DQ (${ VSub_Name CERT_DIR) (/pki/issued/kube-apiserver.crt))}
                                  )
                                  (C {(base64)})
                                  (C {(tr)} {(-d)} {(SQ <'\\r\\n'>)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [8553 8576]
                      )
                    }
                  spids: [8552]
                )
              ]
              spids: [8552]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBEAPISERVER_KEY_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {(cat)} 
                                    {(DQ (${ VSub_Name CERT_DIR) (/pki/private/kube-apiserver.key))}
                                  )
                                  (C {(base64)})
                                  (C {(tr)} {(-d)} {(SQ <'\\r\\n'>)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [8580 8603]
                      )
                    }
                  spids: [8579]
                )
              ]
              spids: [8579]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:AGGREGATOR_CERT_DIR)
                  op: Equal
                  rhs: {(DQ (${ VSub_Name KUBE_TEMP) (/easy-rsa-master/aggregator))}
                  spids: [8619]
                )
              ]
              spids: [8619]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:AGGREGATOR_CA_KEY_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {(cat)} 
                                    {(DQ (${ VSub_Name AGGREGATOR_CERT_DIR) (/pki/private/ca.key))}
                                  )
                                  (C {(base64)})
                                  (C {(tr)} {(-d)} {(SQ <'\\r\\n'>)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [8629 8652]
                      )
                    }
                  spids: [8628]
                )
              ]
              spids: [8628]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:REQUESTHEADER_CA_CERT_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {(cat)} {(DQ (${ VSub_Name AGGREGATOR_CERT_DIR) (/pki/ca.crt))})
                                  (C {(base64)})
                                  (C {(tr)} {(-d)} {(SQ <'\\r\\n'>)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [8656 8679]
                      )
                    }
                  spids: [8655]
                )
              ]
              spids: [8655]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:PROXY_CLIENT_CERT_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {(cat)} 
                                    {
                                      (DQ (${ VSub_Name AGGREGATOR_CERT_DIR) 
                                        (/pki/issued/proxy-client.crt)
                                      )
                                    }
                                  )
                                  (C {(base64)})
                                  (C {(tr)} {(-d)} {(SQ <'\\r\\n'>)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [8683 8706]
                      )
                    }
                  spids: [8682]
                )
              ]
              spids: [8682]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:PROXY_CLIENT_KEY_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {(cat)} 
                                    {
                                      (DQ (${ VSub_Name AGGREGATOR_CERT_DIR) 
                                        (/pki/private/proxy-client.key)
                                      )
                                    }
                                  )
                                  (C {(base64)})
                                  (C {(tr)} {(-d)} {(SQ <'\\r\\n'>)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [8710 8733]
                      )
                    }
                  spids: [8709]
                )
              ]
              spids: [8709]
            )
          ]
          spids: [8095]
        )
      spids: [8091 8094]
    )
    (FuncDef
      name: setup-easyrsa
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              flags: [-r]
              pairs: [
                (assign_pair
                  lhs: (LhsName name:cert_create_debug_output)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(mktemp)} 
                                {(DQ (${ VSub_Name KUBE_TEMP) (/cert_create_debug_output.XXX))}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [8750 8759]
                      )
                    }
                  spids: [8749]
                )
              ]
              spids: [8745]
            )
            (Sentence
              child: 
                (Subshell
                  child: 
                    (CommandList
                      children: [
                        (C {(set)} {(-x)})
                        (C {(cd)} {(DQ (${ VSub_Name KUBE_TEMP))})
                        (C {(curl)} {(-L)} {(-O)} {(--connect-timeout)} {(20)} {(--retry)} {(6)} 
                          {(--retry-delay)} {(2)} {(https) (Lit_Other ':') (//storage.googleapis.com/kubernetes-release/easy-rsa/easy-rsa.tar.gz)}
                        )
                        (C {(tar)} {(xzf)} {(easy-rsa.tar.gz)})
                        (C {(mkdir)} {(easy-rsa-master/kubelet)})
                        (C {(cp)} {(-r)} {(easy-rsa-master/easyrsa3/) (Lit_Other '*')} 
                          {(easy-rsa-master/kubelet)}
                        )
                        (C {(mkdir)} {(easy-rsa-master/aggregator)})
                        (C {(cp)} {(-r)} {(easy-rsa-master/easyrsa3/) (Lit_Other '*')} 
                          {(easy-rsa-master/aggregator)}
                        )
                      ]
                    )
                  spids: [8766 8839]
                )
              terminator: <Op_Amp '&'>
            )
            (AndOr
              children: [
                (SimpleCommand
                  redirects: [
                    (Redir
                      op_id: Redir_Great
                      fd: 16777215
                      arg_word: {(${ VSub_Name cert_create_debug_output)}
                      spids: [8842]
                    )
                  ]
                )
                (BraceGroup
                  children: [
                    (SimpleCommand
                      words: [{(cat)} {(DQ (${ VSub_Name cert_create_debug_output))}]
                      redirects: [
                        (Redir
                          op_id: Redir_GreatAnd
                          fd: 16777215
                          arg_word: {(2)}
                          spids: [8868]
                        )
                      ]
                    )
                    (SimpleCommand
                      words: [{(echo)} {(DQ ('=== Failed to setup easy-rsa: Aborting ==='))}]
                      redirects: [
                        (Redir
                          op_id: Redir_GreatAnd
                          fd: 16777215
                          arg_word: {(2)}
                          spids: [8878]
                        )
                      ]
                    )
                    (C {(exit)} {(2)})
                  ]
                  spids: [8849]
                )
              ]
              op_id: Op_DPipe
            )
          ]
          spids: [8742]
        )
      spids: [8738 8741]
    )
    (FuncDef
      name: generate-certs
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              flags: [-r]
              pairs: [
                (assign_pair
                  lhs: (LhsName name:cert_create_debug_output)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(mktemp)} 
                                {(DQ (${ VSub_Name KUBE_TEMP) (/cert_create_debug_output.XXX))}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [8934 8943]
                      )
                    }
                  spids: [8933]
                )
              ]
              spids: [8929]
            )
            (Sentence
              child: 
                (Subshell
                  child: 
                    (CommandList
                      children: [
                        (C {(set)} {(-x)})
                        (C {(cd)} {(DQ (${ VSub_Name KUBE_TEMP) (/easy-rsa-master/easyrsa3))})
                        (C {(./easyrsa)} {(init-pki)})
                        (C {(./easyrsa)} {(--batch)} 
                          {
                            (DQ ('--req-cn=') (${ VSub_Name PRIMARY_CN) ('@') 
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [(C {(date)} {(Lit_Other '+') (Lit_Other '%') (s)})]
                                  )
                                left_token: <Left_CommandSub '$('>
                                spids: [8985 8991]
                              )
                            )
                          } {(build-ca)} {(nopass)}
                        )
                        (C {(./easyrsa)} {(--subject-alt-name) (Lit_Other '=') (DQ (${ VSub_Name SANS))} 
                          {(build-server-full)} {(DQ (${ VSub_Name MASTER_NAME))} {(nopass)}
                        )
                        (C {(./easyrsa)} {(build-client-full)} {(kube-apiserver)} {(nopass)})
                        (C 
                          {(kube) (Lit_Other ':') (Lit_Other ':') (util) (Lit_Other ':') (Lit_Other ':') 
                            (ensure-cfssl)
                          } {(DQ (${ VSub_Name KUBE_TEMP) (/cfssl))}
                        )
                        (SimpleCommand
                          words: [
                            {(echo)}
                            {
                              (SQ 
                                <
'{"signing":{"default":{"expiry":"43800h","usages":["signing","key encipherment","client auth"]}}}'
                                >
                              )
                            }
                          ]
                          redirects: [
                            (Redir
                              op_id: Redir_Great
                              fd: 16777215
                              arg_word: {(DQ (ca-config.json))}
                              spids: [9057]
                            )
                          ]
                        )
                        (Pipeline
                          children: [
                            (C {(echo)} 
                              {
                                (SQ 
                                  <
'{"CN":"kubelet","names":[{"O":"system:nodes"}],"hosts":[""],"key":{"algo":"rsa","size":2048}}'
                                  >
                                )
                              }
                            )
                            (C {(DQ (${ VSub_Name CFSSL_BIN))} {(gencert)} 
                              {(-ca) (Lit_Other '=') (pki/ca.crt)} {(-ca-key) (Lit_Other '=') (pki/private/ca.key)} {(-config) (Lit_Other '=') (ca-config.json)} {(-)}
                            )
                            (C {(DQ (${ VSub_Name CFSSLJSON_BIN))} {(-bare)} {(kubelet)})
                          ]
                          negated: False
                        )
                        (C {(mv)} {(DQ (kubelet-key.pem))} {(DQ (pki/private/kubelet.key))})
                        (C {(mv)} {(DQ (kubelet.pem))} {(DQ (pki/issued/kubelet.crt))})
                        (C {(rm)} {(-f)} {(DQ (kubelet.csr))})
                        (C {(./easyrsa)} {(--dn-mode) (Lit_Other '=') (org)} 
                          {(--req-cn) (Lit_Other '=') (kubecfg)} {(--req-org) (Lit_Other '=') (system) (Lit_Other ':') (masters)} {(--req-c) (Lit_Other '=')} 
                          {(--req-st) (Lit_Other '=')} {(--req-city) (Lit_Other '=')} {(--req-email) (Lit_Other '=')} {(--req-ou) (Lit_Other '=')} 
                          {(build-client-full)} {(kubecfg)} {(nopass)}
                        )
                      ]
                    )
                  spids: [8950 9189]
                )
              terminator: <Op_Amp '&'>
            )
            (AndOr
              children: [
                (SimpleCommand
                  redirects: [
                    (Redir
                      op_id: Redir_Great
                      fd: 16777215
                      arg_word: {(${ VSub_Name cert_create_debug_output)}
                      spids: [9192]
                    )
                  ]
                )
                (BraceGroup
                  children: [
                    (SimpleCommand
                      words: [{(cat)} {(DQ (${ VSub_Name cert_create_debug_output))}]
                      redirects: [
                        (Redir
                          op_id: Redir_GreatAnd
                          fd: 16777215
                          arg_word: {(2)}
                          spids: [9218]
                        )
                      ]
                    )
                    (SimpleCommand
                      words: [
                        {(echo)}
                        {(DQ ('=== Failed to generate master certificates: Aborting ==='))}
                      ]
                      redirects: [
                        (Redir
                          op_id: Redir_GreatAnd
                          fd: 16777215
                          arg_word: {(2)}
                          spids: [9228]
                        )
                      ]
                    )
                    (C {(exit)} {(2)})
                  ]
                  spids: [9199]
                )
              ]
              op_id: Op_DPipe
            )
          ]
          spids: [8926]
        )
      spids: [8922 8925]
    )
    (FuncDef
      name: generate-aggregator-certs
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              flags: [-r]
              pairs: [
                (assign_pair
                  lhs: (LhsName name:cert_create_debug_output)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(mktemp)} 
                                {(DQ (${ VSub_Name KUBE_TEMP) (/cert_create_debug_output.XXX))}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [9284 9293]
                      )
                    }
                  spids: [9283]
                )
              ]
              spids: [9279]
            )
            (Sentence
              child: 
                (Subshell
                  child: 
                    (CommandList
                      children: [
                        (C {(set)} {(-x)})
                        (C {(cd)} {(DQ (${ VSub_Name KUBE_TEMP) (/easy-rsa-master/aggregator))})
                        (C {(./easyrsa)} {(init-pki)})
                        (C {(./easyrsa)} {(--batch)} 
                          {
                            (DQ ('--req-cn=') (${ VSub_Name AGGREGATOR_PRIMARY_CN) ('@') 
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [(C {(date)} {(Lit_Other '+') (Lit_Other '%') (s)})]
                                  )
                                left_token: <Left_CommandSub '$('>
                                spids: [9335 9341]
                              )
                            )
                          } {(build-ca)} {(nopass)}
                        )
                        (C {(./easyrsa)} 
                          {(--subject-alt-name) (Lit_Other '=') (DQ (${ VSub_Name AGGREGATOR_SANS))} {(build-server-full)} {(DQ (${ VSub_Name AGGREGATOR_MASTER_NAME))} {(nopass)}
                        )
                        (C {(./easyrsa)} {(build-client-full)} {(aggregator-apiserver)} {(nopass)})
                        (C 
                          {(kube) (Lit_Other ':') (Lit_Other ':') (util) (Lit_Other ':') (Lit_Other ':') 
                            (ensure-cfssl)
                          } {(DQ (${ VSub_Name KUBE_TEMP) (/cfssl))}
                        )
                        (SimpleCommand
                          words: [
                            {(echo)}
                            {
                              (SQ 
                                <
'{"signing":{"default":{"expiry":"43800h","usages":["signing","key encipherment","client auth"]}}}'
                                >
                              )
                            }
                          ]
                          redirects: [
                            (Redir
                              op_id: Redir_Great
                              fd: 16777215
                              arg_word: {(DQ (ca-config.json))}
                              spids: [9407]
                            )
                          ]
                        )
                        (Pipeline
                          children: [
                            (C {(echo)} 
                              {
                                (SQ 
                                  <
'{"CN":"aggregator","hosts":[""],"key":{"algo":"rsa","size":2048}}'
                                  >
                                )
                              }
                            )
                            (C {(DQ (${ VSub_Name CFSSL_BIN))} {(gencert)} 
                              {(-ca) (Lit_Other '=') (pki/ca.crt)} {(-ca-key) (Lit_Other '=') (pki/private/ca.key)} {(-config) (Lit_Other '=') (ca-config.json)} {(-)}
                            )
                            (C {(DQ (${ VSub_Name CFSSLJSON_BIN))} {(-bare)} {(proxy-client)})
                          ]
                          negated: False
                        )
                        (C {(mv)} {(DQ (proxy-client-key.pem))} {(DQ (pki/private/proxy-client.key))})
                        (C {(mv)} {(DQ (proxy-client.pem))} {(DQ (pki/issued/proxy-client.crt))})
                        (C {(rm)} {(-f)} {(DQ (proxy-client.csr))})
                        (C {(./easyrsa)} {(--dn-mode) (Lit_Other '=') (org)} 
                          {(--req-cn) (Lit_Other '=') (proxy-clientcfg)} {(--req-org) (Lit_Other '=') (system) (Lit_Other ':') (aggregator)} {(--req-c) (Lit_Other '=')} 
                          {(--req-st) (Lit_Other '=')} {(--req-city) (Lit_Other '=')} {(--req-email) (Lit_Other '=')} {(--req-ou) (Lit_Other '=')} 
                          {(build-client-full)} {(proxy-clientcfg)} {(nopass)}
                        )
                      ]
                    )
                  spids: [9300 9539]
                )
              terminator: <Op_Amp '&'>
            )
            (AndOr
              children: [
                (SimpleCommand
                  redirects: [
                    (Redir
                      op_id: Redir_Great
                      fd: 16777215
                      arg_word: {(${ VSub_Name cert_create_debug_output)}
                      spids: [9542]
                    )
                  ]
                )
                (BraceGroup
                  children: [
                    (SimpleCommand
                      words: [{(cat)} {(DQ (${ VSub_Name cert_create_debug_output))}]
                      redirects: [
                        (Redir
                          op_id: Redir_GreatAnd
                          fd: 16777215
                          arg_word: {(2)}
                          spids: [9568]
                        )
                      ]
                    )
                    (SimpleCommand
                      words: [
                        {(echo)}
                        {(DQ ('=== Failed to generate aggregator certificates: Aborting ==='))}
                      ]
                      redirects: [
                        (Redir
                          op_id: Redir_GreatAnd
                          fd: 16777215
                          arg_word: {(2)}
                          spids: [9578]
                        )
                      ]
                    )
                    (C {(exit)} {(2)})
                  ]
                  spids: [9549]
                )
              ]
              op_id: Op_DPipe
            )
          ]
          spids: [9276]
        )
      spids: [9272 9275]
    )
    (FuncDef
      name: generate-etcd-cert
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:cert_dir)
                  op: Equal
                  rhs: {(${ VSub_Number 1)}
                  spids: [9645]
                )
              ]
              spids: [9643]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:member_ip)
                  op: Equal
                  rhs: {(${ VSub_Number 2)}
                  spids: [9653]
                )
              ]
              spids: [9651]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:type_cert)
                  op: Equal
                  rhs: {(${ VSub_Number 3)}
                  spids: [9661]
                )
              ]
              spids: [9659]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:prefix)
                  op: Equal
                  rhs: 
                    {
                      (BracedVarSub
                        token: <VSub_Number 4>
                        suffix_op: 
                          (StringUnary
                            op_id: VTest_ColonHyphen
                            arg_word: {(DQ (${ VSub_Name type_cert))}
                          )
                        spids: [9670 9678]
                      )
                    }
                  spids: [9669]
                )
              ]
              spids: [9667]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:GEN_ETCD_CA_CERT)
                  op: Equal
                  rhs: 
                    {
                      (BracedVarSub
                        token: <VSub_Name GEN_ETCD_CA_CERT>
                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                        spids: [9685 9688]
                      )
                    }
                  spids: [9684]
                )
              ]
              spids: [9682]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:GEN_ETCD_CA_KEY)
                  op: Equal
                  rhs: 
                    {
                      (BracedVarSub
                        token: <VSub_Name GEN_ETCD_CA_KEY>
                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                        spids: [9694 9697]
                      )
                    }
                  spids: [9693]
                )
              ]
              spids: [9691]
            )
            (C {(mkdir)} {(-p)} {(DQ (${ VSub_Name cert_dir))})
            (C {(pushd)} {(DQ (${ VSub_Name cert_dir))})
            (C 
              {(kube) (Lit_Other ':') (Lit_Other ':') (util) (Lit_Other ':') (Lit_Other ':') 
                (ensure-cfssl)
              } {(.)}
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(KW_Bang '!')} {(-r)} {(DQ (ca-config.json))} 
                          {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_Great
                          fd: 16777215
                          arg_word: {(ca-config.json)}
                          spids: [9754]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('{\n') ('    ') (Right_DoubleQuote '"') (signing) 
                                (Right_DoubleQuote '"') (': {\n') ('        ') (Right_DoubleQuote '"') (default) (Right_DoubleQuote '"') (': {\n') ('            ') 
                                (Right_DoubleQuote '"') (expiry) (Right_DoubleQuote '"') (': ') (Right_DoubleQuote '"') (43800h) (Right_DoubleQuote '"') ('\n') 
                                ('        },\n') ('        ') (Right_DoubleQuote '"') (profiles) (Right_DoubleQuote '"') (': {\n') ('            ') 
                                (Right_DoubleQuote '"') (server) (Right_DoubleQuote '"') (': {\n') ('                ') (Right_DoubleQuote '"') (expiry) 
                                (Right_DoubleQuote '"') (': ') (Right_DoubleQuote '"') (43800h) (Right_DoubleQuote '"') (',\n') ('                ') 
                                (Right_DoubleQuote '"') (usages) (Right_DoubleQuote '"') (': [\n') ('                    ') (Right_DoubleQuote '"') (signing) 
                                (Right_DoubleQuote '"') (',\n') ('                    ') (Right_DoubleQuote '"') ('key encipherment') (Right_DoubleQuote '"') 
                                (',\n') ('                    ') (Right_DoubleQuote '"') ('server auth') (Right_DoubleQuote '"') ('\n') 
                                ('                ]\n') ('            },\n') ('            ') (Right_DoubleQuote '"') (client) (Right_DoubleQuote '"') (': {\n') 
                                ('                ') (Right_DoubleQuote '"') (expiry) (Right_DoubleQuote '"') (': ') (Right_DoubleQuote '"') (43800h) 
                                (Right_DoubleQuote '"') (',\n') ('                ') (Right_DoubleQuote '"') (usages) (Right_DoubleQuote '"') (': [\n') 
                                ('                    ') (Right_DoubleQuote '"') (signing) (Right_DoubleQuote '"') (',\n') ('                    ') 
                                (Right_DoubleQuote '"') ('key encipherment') (Right_DoubleQuote '"') (',\n') ('                    ') (Right_DoubleQuote '"') 
                                ('client auth') (Right_DoubleQuote '"') ('\n') ('                ]\n') ('            },\n') ('            ') 
                                (Right_DoubleQuote '"') (peer) (Right_DoubleQuote '"') (': {\n') ('                ') (Right_DoubleQuote '"') (expiry) 
                                (Right_DoubleQuote '"') (': ') (Right_DoubleQuote '"') (43800h) (Right_DoubleQuote '"') (',\n') ('                ') 
                                (Right_DoubleQuote '"') (usages) (Right_DoubleQuote '"') (': [\n') ('                    ') (Right_DoubleQuote '"') (signing) 
                                (Right_DoubleQuote '"') (',\n') ('                    ') (Right_DoubleQuote '"') ('key encipherment') (Right_DoubleQuote '"') 
                                (',\n') ('                    ') (Right_DoubleQuote '"') ('server auth') (Right_DoubleQuote '"') (',\n') 
                                ('                    ') (Right_DoubleQuote '"') ('client auth') (Right_DoubleQuote '"') ('\n') ('                ]\n') 
                                ('            }\n') ('        }\n') ('    }\n') ('}\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [9757]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 9749]
                )
              ]
              spids: [16777215 9904]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(KW_Bang '!')} {(-r)} {(DQ (ca-csr.json))} {(Lit_Other ']')})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_Great
                          fd: 16777215
                          arg_word: {(ca-csr.json)}
                          spids: [9928]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('{\n') ('    ') (Right_DoubleQuote '"') (CN) (Right_DoubleQuote '"') 
                                (': ') (Right_DoubleQuote '"') (Kubernetes) (Right_DoubleQuote '"') (',\n') ('    ') (Right_DoubleQuote '"') (key) 
                                (Right_DoubleQuote '"') (': {\n') ('        ') (Right_DoubleQuote '"') (algo) (Right_DoubleQuote '"') (': ') 
                                (Right_DoubleQuote '"') (ecdsa) (Right_DoubleQuote '"') (',\n') ('        ') (Right_DoubleQuote '"') (size) (Right_DoubleQuote '"') 
                                (': 256\n') ('    },\n') ('    ') (Right_DoubleQuote '"') (names) (Right_DoubleQuote '"') (': [\n') ('        {\n') 
                                ('            ') (Right_DoubleQuote '"') (C) (Right_DoubleQuote '"') (': ') (Right_DoubleQuote '"') (US) 
                                (Right_DoubleQuote '"') (',\n') ('            ') (Right_DoubleQuote '"') (L) (Right_DoubleQuote '"') (': ') (Right_DoubleQuote '"') 
                                (CA) (Right_DoubleQuote '"') (',\n') ('            ') (Right_DoubleQuote '"') (O) (Right_DoubleQuote '"') (': ') 
                                (Right_DoubleQuote '"') (kubernetes.io) (Right_DoubleQuote '"') ('\n') ('        }\n') ('    ]\n') ('}\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [9931]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 9923]
                )
              ]
              spids: [16777215 10002]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (LogicalAnd
                              left: 
                                (BoolUnary
                                  op_id: BoolUnary_n
                                  child: {(DQ (${ VSub_Name GEN_ETCD_CA_CERT))}
                                )
                              right: 
                                (BoolUnary
                                  op_id: BoolUnary_n
                                  child: {(DQ (${ VSub_Name GEN_ETCD_CA_KEY))}
                                )
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Pipeline
                      children: [
                        (C {(echo)} {(DQ (${ VSub_Name ca_cert))})
                        (C {(base64)} {(--decode)})
                        (SimpleCommand
                          words: [{(gunzip)}]
                          redirects: [
                            (Redir
                              op_id: Redir_Great
                              fd: 16777215
                              arg_word: {(ca.pem)}
                              spids: [10052]
                            )
                          ]
                        )
                      ]
                      negated: False
                    )
                    (Pipeline
                      children: [
                        (C {(echo)} {(DQ (${ VSub_Name ca_key))})
                        (SimpleCommand
                          words: [{(base64)} {(--decode)}]
                          redirects: [
                            (Redir
                              op_id: Redir_Great
                              fd: 16777215
                              arg_word: {(ca-key.pem)}
                              spids: [10071]
                            )
                          ]
                        )
                      ]
                      negated: False
                    )
                  ]
                  spids: [16777215 10031]
                )
              ]
              spids: [16777215 10076]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (LogicalOr
                              left: 
                                (LogicalNot
                                  child: (BoolUnary op_id:BoolUnary_r child:{(DQ (ca.pem))})
                                )
                              right: 
                                (LogicalNot
                                  child: (BoolUnary op_id:BoolUnary_r child:{(DQ (ca-key.pem))})
                                )
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Pipeline
                      children: [
                        (C {(${ VSub_Name CFSSL_BIN)} {(gencert)} {(-initca)} {(ca-csr.json)})
                        (C {(${ VSub_Name CFSSLJSON_BIN)} {(-bare)} {(ca)} {(-)})
                      ]
                      negated: False
                    )
                  ]
                  spids: [16777215 10105]
                )
              ]
              spids: [16777215 10131]
            )
            (Case
              to_match: {(DQ (${ VSub_Name type_cert))}
              arms: [
                (case_arm
                  pat_list: [{(client)}]
                  action: [
                    (C {(echo)} {(DQ ('Generate client certificates...'))})
                    (Pipeline
                      children: [
                        (C {(echo)} 
                          {(SQ <'{"CN":"client","hosts":["*"],"key":{"algo":"ecdsa","size":256}}'>)}
                        )
                        (C {(${ VSub_Name CFSSL_BIN)} {(gencert)} {(-ca) (Lit_Other '=') (ca.pem)} 
                          {(-ca-key) (Lit_Other '=') (ca-key.pem)} {(-config) (Lit_Other '=') (ca-config.json)} {(-profile) (Lit_Other '=') (client)} {(-)}
                        )
                        (C {(${ VSub_Name CFSSLJSON_BIN)} {(-bare)} {(DQ (${ VSub_Name prefix))})
                      ]
                      negated: False
                    )
                  ]
                  spids: [10146 10147 10208 16777215]
                )
                (case_arm
                  pat_list: [{(server)}]
                  action: [
                    (C {(echo)} {(DQ ('Generate server certificates...'))})
                    (Pipeline
                      children: [
                        (C {(echo)} 
                          {(SQ <'{"CN":"'>) (${ VSub_Name member_ip) 
                            (SQ <'","hosts":[""],"key":{"algo":"ecdsa","size":256}}'>)
                          }
                        )
                        (C {(${ VSub_Name CFSSL_BIN)} {(gencert)} {(-ca) (Lit_Other '=') (ca.pem)} 
                          {(-ca-key) (Lit_Other '=') (ca-key.pem)} {(-config) (Lit_Other '=') (ca-config.json)} {(-profile) (Lit_Other '=') (server)} 
                          {(-hostname) (Lit_Other '=') (DQ (${ VSub_Name member_ip) (',127.0.0.1'))} {(-)}
                        )
                        (C {(${ VSub_Name CFSSLJSON_BIN)} {(-bare)} {(DQ (${ VSub_Name prefix))})
                      ]
                      negated: False
                    )
                  ]
                  spids: [10211 10212 10288 16777215]
                )
                (case_arm
                  pat_list: [{(peer)}]
                  action: [
                    (C {(echo)} {(DQ ('Generate peer certificates...'))})
                    (Pipeline
                      children: [
                        (C {(echo)} 
                          {(SQ <'{"CN":"'>) (${ VSub_Name member_ip) 
                            (SQ <'","hosts":[""],"key":{"algo":"ecdsa","size":256}}'>)
                          }
                        )
                        (C {(${ VSub_Name CFSSL_BIN)} {(gencert)} {(-ca) (Lit_Other '=') (ca.pem)} 
                          {(-ca-key) (Lit_Other '=') (ca-key.pem)} {(-config) (Lit_Other '=') (ca-config.json)} {(-profile) (Lit_Other '=') (peer)} 
                          {(-hostname) (Lit_Other '=') (DQ (${ VSub_Name member_ip) (',127.0.0.1'))} {(-)}
                        )
                        (C {(${ VSub_Name CFSSLJSON_BIN)} {(-bare)} {(DQ (${ VSub_Name prefix))})
                      ]
                      negated: False
                    )
                  ]
                  spids: [10291 10292 10368 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*')}]
                  action: [
                    (SimpleCommand
                      words: [
                        {(echo)}
                        {(DQ ('Unknow, unsupported etcd certs type: ') (${ VSub_Name type_cert))}
                      ]
                      redirects: [
                        (Redir
                          op_id: Redir_GreatAnd
                          fd: 16777215
                          arg_word: {(2)}
                          spids: [10384]
                        )
                      ]
                    )
                    (SimpleCommand
                      words: [{(echo)} {(DQ ('Supported type: client, server, peer'))}]
                      redirects: [
                        (Redir
                          op_id: Redir_GreatAnd
                          fd: 16777215
                          arg_word: {(2)}
                          spids: [10394]
                        )
                      ]
                    )
                    (C {(exit)} {(2)})
                  ]
                  spids: [10371 10372 16777215 10403]
                )
              ]
              spids: [10135 10143 10403]
            )
            (C {(popd)})
          ]
          spids: [9640]
        )
      spids: [9634 9639]
    )
    (FuncDef
      name: get-env-val
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:match)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (AndOr
                                children: [
                                  (Subshell
                                    child: 
                                      (Pipeline
                                        children: [
                                          (C {(echo)} {(DQ (${ VSub_Number 1))})
                                          (C {(grep)} {(-E)} {(DQ ('^') (${ VSub_Number 2) (':'))})
                                        ]
                                        negated: False
                                      )
                                    spids: [10443 10465]
                                  )
                                  (C {(echo)} {(DQ )})
                                ]
                                op_id: Op_DPipe
                              )
                            ]
                          )
                        left_token: <Left_Backtick '`'>
                        spids: [10442 10473]
                      )
                    }
                  spids: [10441]
                )
              ]
              spids: [10439]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (DBracket expr:(BoolUnary op_id:BoolUnary_z child:{(${ VSub_Name match)}))
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(echo)} {(DQ )})]
                  spids: [16777215 10489]
                )
              ]
              spids: [16777215 10498]
            )
            (Pipeline
              children: [
                (C {(echo)} {(${ VSub_Name match)})
                (C {(cut)} {(-d)} {(Lit_Other ':')} {(-f)} {(2)})
                (C {(cut)} {(-d)} {(EscapedLiteralPart token:<Lit_EscapedChar "\\'">)} {(-f)} {(2)})
              ]
              negated: False
            )
          ]
          spids: [10436]
        )
      spids: [10430 10435]
    )
    (FuncDef
      name: parse-master-env
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:master_env)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: (CommandList children:[(C {(get-master-env)})])
                        left_token: <Left_CommandSub '$('>
                        spids: [10553 10555]
                      )
                    }
                  spids: [10552]
                )
              ]
              spids: [10550]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBELET_TOKEN)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(get-env-val)} {(DQ (${ VSub_Name master_env))} {(DQ (KUBELET_TOKEN))})
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [10559 10571]
                      )
                    }
                  spids: [10558]
                )
              ]
              spids: [10558]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBE_PROXY_TOKEN)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(get-env-val)} {(DQ (${ VSub_Name master_env))} 
                                {(DQ (KUBE_PROXY_TOKEN))}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [10575 10587]
                      )
                    }
                  spids: [10574]
                )
              ]
              spids: [10574]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:NODE_PROBLEM_DETECTOR_TOKEN)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(get-env-val)} {(DQ (${ VSub_Name master_env))} 
                                {(DQ (NODE_PROBLEM_DETECTOR_TOKEN))}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [10591 10603]
                      )
                    }
                  spids: [10590]
                )
              ]
              spids: [10590]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:CA_CERT_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(get-env-val)} {(DQ (${ VSub_Name master_env))} {(DQ (CA_CERT))})
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [10607 10619]
                      )
                    }
                  spids: [10606]
                )
              ]
              spids: [10606]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:CA_KEY_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(get-env-val)} {(DQ (${ VSub_Name master_env))} {(DQ (CA_KEY))})
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [10623 10635]
                      )
                    }
                  spids: [10622]
                )
              ]
              spids: [10622]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBEAPISERVER_CERT_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(get-env-val)} {(DQ (${ VSub_Name master_env))} 
                                {(DQ (KUBEAPISERVER_CERT))}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [10639 10651]
                      )
                    }
                  spids: [10638]
                )
              ]
              spids: [10638]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBEAPISERVER_KEY_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(get-env-val)} {(DQ (${ VSub_Name master_env))} 
                                {(DQ (KUBEAPISERVER_KEY))}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [10655 10667]
                      )
                    }
                  spids: [10654]
                )
              ]
              spids: [10654]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:EXTRA_DOCKER_OPTS)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(get-env-val)} {(DQ (${ VSub_Name master_env))} 
                                {(DQ (EXTRA_DOCKER_OPTS))}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [10671 10683]
                      )
                    }
                  spids: [10670]
                )
              ]
              spids: [10670]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBELET_CERT_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(get-env-val)} {(DQ (${ VSub_Name master_env))} {(DQ (KUBELET_CERT))})
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [10687 10699]
                      )
                    }
                  spids: [10686]
                )
              ]
              spids: [10686]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:KUBELET_KEY_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(get-env-val)} {(DQ (${ VSub_Name master_env))} {(DQ (KUBELET_KEY))})
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [10703 10715]
                      )
                    }
                  spids: [10702]
                )
              ]
              spids: [10702]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:MASTER_CERT_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(get-env-val)} {(DQ (${ VSub_Name master_env))} {(DQ (MASTER_CERT))})
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [10719 10731]
                      )
                    }
                  spids: [10718]
                )
              ]
              spids: [10718]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:MASTER_KEY_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(get-env-val)} {(DQ (${ VSub_Name master_env))} {(DQ (MASTER_KEY))})
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [10735 10747]
                      )
                    }
                  spids: [10734]
                )
              ]
              spids: [10734]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:AGGREGATOR_CA_KEY_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(get-env-val)} {(DQ (${ VSub_Name master_env))} 
                                {(DQ (AGGREGATOR_CA_KEY))}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [10751 10763]
                      )
                    }
                  spids: [10750]
                )
              ]
              spids: [10750]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:REQUESTHEADER_CA_CERT_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(get-env-val)} {(DQ (${ VSub_Name master_env))} 
                                {(DQ (REQUESTHEADER_CA_CERT))}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [10767 10779]
                      )
                    }
                  spids: [10766]
                )
              ]
              spids: [10766]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:PROXY_CLIENT_CERT_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(get-env-val)} {(DQ (${ VSub_Name master_env))} 
                                {(DQ (PROXY_CLIENT_CERT))}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [10783 10795]
                      )
                    }
                  spids: [10782]
                )
              ]
              spids: [10782]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:PROXY_CLIENT_KEY_BASE64)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(get-env-val)} {(DQ (${ VSub_Name master_env))} 
                                {(DQ (PROXY_CLIENT_KEY))}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [10799 10811]
                      )
                    }
                  spids: [10798]
                )
              ]
              spids: [10798]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:ENABLE_LEGACY_ABAC)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(get-env-val)} {(DQ (${ VSub_Name master_env))} 
                                {(DQ (ENABLE_LEGACY_ABAC))}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [10815 10827]
                      )
                    }
                  spids: [10814]
                )
              ]
              spids: [10814]
            )
          ]
          spids: [10543]
        )
      spids: [10537 10542]
    )
    (FuncDef
      name: update-or-verify-gcloud
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LhsName name:sudo_prefix) op:Equal rhs:{(DQ )} spids:[10855])]
              spids: [10853]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(KW_Bang '!')} {(-w)} 
                          {
                            (CommandSubPart
                              command_list: 
                                (CommandList
                                  children: [
                                    (C {(dirname)} 
                                      {
                                        (CommandSubPart
                                          command_list: 
                                            (CommandList
                                              children: [(C {(which)} {(gcloud)})]
                                            )
                                          left_token: <Left_Backtick '`'>
                                          spids: [10871 10875]
                                        )
                                      }
                                    )
                                  ]
                                )
                              left_token: <Left_CommandSub '$('>
                              spids: [10868 10876]
                            )
                          } {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:sudo_prefix)
                          op: Equal
                          rhs: {(DQ (sudo))}
                          spids: [10884]
                        )
                      ]
                      spids: [10884]
                    )
                  ]
                  spids: [16777215 10881]
                )
              ]
              spids: [16777215 10890]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolBinary
                              op_id: BoolBinary_GlobDEqual
                              left: {(DQ (${ VSub_Name KUBE_PROMPT_FOR_UPDATE))}
                              right: {(DQ (y))}
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(${ VSub_Name sudo_prefix)} {(gcloud)} 
                      {
                        (BracedVarSub
                          token: <VSub_Name gcloud_prompt>
                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                          spids: [10925 10928]
                        )
                      } {(components)} {(install)} {(alpha)}
                    )
                    (C {(${ VSub_Name sudo_prefix)} {(gcloud)} 
                      {
                        (BracedVarSub
                          token: <VSub_Name gcloud_prompt>
                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                          spids: [10943 10946]
                        )
                      } {(components)} {(install)} {(beta)}
                    )
                    (C {(${ VSub_Name sudo_prefix)} {(gcloud)} 
                      {
                        (BracedVarSub
                          token: <VSub_Name gcloud_prompt>
                          suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{})
                          spids: [10961 10964]
                        )
                      } {(components)} {(update)}
                    )
                  ]
                  spids: [16777215 10916]
                )
              ]
              else_action: [
                (Assignment
                  keyword: Assign_Local
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:version)
                      op: Equal
                      rhs: 
                        {
                          (CommandSubPart
                            command_list: 
                              (CommandList
                                children: [
                                  (C {(gcloud)} {(version)} {(--format) (Lit_Other '=') (json)})
                                ]
                              )
                            left_token: <Left_CommandSub '$('>
                            spids: [10977 10985]
                          )
                        }
                      spids: [10976]
                    )
                  ]
                  spids: [10974]
                )
                (C {(python)} 
                  {(-c) 
                    (SQ <'\n'> <'import json,sys\n'> <'from distutils import version\n'> <'\n'> 
                      <'minVersion = version.LooseVersion("1.3.0")\n'> <'required = [ "alpha", "beta", "core" ]\n'> <'data = json.loads(sys.argv[1])\n'> 
                      <'rel = data.get("Google Cloud SDK")\n'> <'if rel != "HEAD" and version.LooseVersion(rel) < minVersion:\n'> 
                      <'  print("gcloud version out of date ( < %s )" % minVersion)\n'> <'  exit(1)\n'> <'missing = []\n'> <'for c in required:\n'> <'  if not data.get(c):\n'> 
                      <'    missing += [c]\n'> <'if missing:\n'> <'  for c in missing:\n'> 
                      <'    print ("missing required gcloud component \\"{0}\\"".format(c))\n'> <'  exit(1)\n'> <'    '>
                    )
                  } {(DQ ) (DQ (${ VSub_Name version)) (DQ )}
                )
              ]
              spids: [10971 11025]
            )
          ]
          spids: [10850]
        )
      spids: [10844 10849]
    )
    (FuncDef
      name: verify-kube-binaries
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:missing_binaries)
                  op: Equal
                  rhs: {(false)}
                  spids: [11053]
                )
              ]
              spids: [11051]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (Pipeline
                          children: [
                            (SimpleCommand
                              words: [
                                {(DQ (${ VSub_Name KUBE_ROOT) (/cluster/kubectl.sh))}
                                {(version)}
                                {(--client)}
                              ]
                              redirects: [
                                (Redir
                                  op_id: Redir_GreatAnd
                                  fd: 16777215
                                  arg_word: {(/dev/null)}
                                  spids: [11072]
                                )
                              ]
                            )
                          ]
                          negated: True
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(echo)} {(DQ ('!!! kubectl appears to be broken or missing'))})
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:missing_binaries)
                          op: Equal
                          rhs: {(true)}
                          spids: [11086]
                        )
                      ]
                      spids: [11086]
                    )
                  ]
                  spids: [16777215 11076]
                )
              ]
              spids: [16777215 11090]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (Pipeline
                          children: [
                            (C 
                              {
                                (CommandSubPart
                                  command_list: (CommandList children:[(C {(find-release-tars)})])
                                  left_token: <Left_CommandSub '$('>
                                  spids: [11097 11099]
                                )
                              }
                            )
                          ]
                          negated: True
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:missing_binaries)
                          op: Equal
                          rhs: {(true)}
                          spids: [11105]
                        )
                      ]
                      spids: [11105]
                    )
                  ]
                  spids: [16777215 11102]
                )
              ]
              spids: [16777215 11109]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (Pipeline
                          children: [(C {(DQ (${ VSub_Name missing_binaries))})]
                          negated: True
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(ControlFlow token:<ControlFlow_Return return>)]
                  spids: [16777215 11124]
                )
              ]
              spids: [16777215 11130]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:get_binaries_script)
                  op: Equal
                  rhs: {(DQ (${ VSub_Name KUBE_ROOT) (/cluster/get-kube-binaries.sh))}
                  spids: [11134]
                )
              ]
              spids: [11134]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LhsName name:resp) op:Equal rhs:{(DQ (y))} spids:[11145])]
              spids: [11143]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (LogicalNot
                              child: 
                                (BoolBinary
                                  op_id: BoolBinary_EqualTilde
                                  left: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          token: <VSub_Name KUBERNETES_SKIP_CONFIRM>
                                          suffix_op: 
                                            (StringUnary
                                              op_id: VTest_ColonHyphen
                                              arg_word: {(n)}
                                            )
                                          spids: [11158 11162]
                                        )
                                      )
                                    }
                                  right: 
                                    {(Lit_Other '^') (Lit_Other '[') (yY) (Lit_Other ']') 
                                      (Lit_Other '$')
                                    }
                                )
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(echo)} 
                      {
                        (DQ 
                          (
'Required binaries appear to be missing. Do you wish to download them? [Y/n]'
                          )
                        )
                      }
                    )
                    (C {(read)} {(resp)})
                  ]
                  spids: [16777215 11176]
                )
              ]
              spids: [16777215 11191]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolBinary
                              op_id: BoolBinary_EqualTilde
                              left: {(DQ (${ VSub_Name resp))}
                              right: 
                                {(Lit_Other '^') (Lit_Other '[') (nN) (Lit_Other ']') (Lit_Other '$')}
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(echo)} {(DQ ('You must download binaries to continue. You can use '))})
                    (C {(echo)} {(DQ ('  ') (${ VSub_Name get_binaries_script))})
                    (C {(echo)} {(DQ ('to do this for your automatically.'))})
                    (C {(exit)} {(1)})
                  ]
                  spids: [16777215 11215]
                )
              ]
              spids: [16777215 11247]
            )
            (C {(DQ (${ VSub_Name get_binaries_script))})
          ]
          spids: [11048]
        )
      spids: [11042 11047]
    )
    (FuncDef
      name: pushd
      body: 
        (BraceGroup
          children: [
            (SimpleCommand
              words: [{(command)} {(pushd)} {($ VSub_At '$@')}]
              redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[11277])]
            )
          ]
          spids: [11268]
        )
      spids: [11262 11267]
    )
    (FuncDef
      name: popd
      body: 
        (BraceGroup
          children: [
            (SimpleCommand
              words: [{(command)} {(popd)} {($ VSub_At '$@')}]
              redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[11302])]
            )
          ]
          spids: [11293]
        )
      spids: [11287 11292]
    )
  ]
)