(command.CommandList
  children: [
    (command.Simple
      blame_tok: <set>
      more_env: []
      words: [{<set>} {<-o>} {<errexit>}]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <set>
      more_env: []
      words: [{<set>} {<-o>} {<nounset>}]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <set>
      more_env: []
      words: [{<set>} {<-o>} {<pipefail>}]
      redirects: []
      do_fork: T
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'KUBE_ROOT='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'KUBE_ROOT='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'KUBE_ROOT='> name:KUBE_ROOT)
          op: assign_op.Equal
          rhs: 
            {
              (CommandSub
                left_token: <Id.Left_DollarParen '$('>
                child: 
                  (command.AndOr
                    children: [
                      (command.Simple
                        blame_tok: <cd>
                        more_env: []
                        words: [
                          {<cd>}
                          {
                            (CommandSub
                              left_token: <Id.Left_DollarParen '$('>
                              child: 
                                (command.Simple
                                  blame_tok: <dirname>
                                  more_env: []
                                  words: [{<dirname>} {(DQ (${ Id.VSub_Name BASH_SOURCE))}]
                                  redirects: []
                                  do_fork: T
                                )
                              right: <Id.Eof_RParen _>
                            ) <'/..'>
                          }
                        ]
                        redirects: []
                        do_fork: T
                      )
                      (command.Simple
                        blame_tok: <pwd>
                        more_env: []
                        words: [{<pwd>}]
                        redirects: []
                        do_fork: T
                      )
                    ]
                    ops: [<Id.Op_DAmp _>]
                  )
                right: <Id.Eof_RParen _>
              )
            }
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'DEFAULT_KUBECONFIG='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'DEFAULT_KUBECONFIG='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'DEFAULT_KUBECONFIG='> name:DEFAULT_KUBECONFIG)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                (BracedVarSub
                  left: <Id.Left_DollarBrace '${'>
                  token: <Id.VSub_Name HOME>
                  var_name: HOME
                  suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{<.>})
                  right: <Id.Right_DollarBrace '}'>
                ) <'/.kube/config'>
              )
            }
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <source>
      more_env: []
      words: [{<source>} {(DQ (${ Id.VSub_Name KUBE_ROOT) <'/hack/lib/util.sh'>)}]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <source>
      more_env: []
      words: [{<source>} {(DQ (${ Id.VSub_Name KUBE_ROOT) <'/cluster/lib/logging.sh'>)}]
      redirects: []
      do_fork: T
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'KUBE_RELEASE_VERSION_REGEX='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'KUBE_RELEASE_VERSION_REGEX='>
          lhs: 
            (sh_lhs_expr.Name
              left: <Id.Lit_VarLike 'KUBE_RELEASE_VERSION_REGEX='>
              name: KUBE_RELEASE_VERSION_REGEX
            )
          op: assign_op.Equal
          rhs: 
            {
              (DQ <'^v(0|[1-9][0-9]*)'> 
                (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'> ch:'\\') <'.(0|[1-9][0-9]*)'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'> ch:'\\') 
                <'.(0|[1-9][0-9]*)(-([a-zA-Z0-9]+)'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'> ch:'\\') <'.(0|[1-9][0-9]*))?'> 
                <Id.Lit_Dollar '$'>
              )
            }
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'KUBE_RELEASE_VERSION_DASHED_REGEX='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'KUBE_RELEASE_VERSION_DASHED_REGEX='>
          lhs: 
            (sh_lhs_expr.Name
              left: <Id.Lit_VarLike 'KUBE_RELEASE_VERSION_DASHED_REGEX='>
              name: KUBE_RELEASE_VERSION_DASHED_REGEX
            )
          op: assign_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]*))?'
                >
              )
            }
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'KUBE_CI_VERSION_REGEX='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'KUBE_CI_VERSION_REGEX='>
          lhs: 
            (sh_lhs_expr.Name
              left: <Id.Lit_VarLike 'KUBE_CI_VERSION_REGEX='>
              name: KUBE_CI_VERSION_REGEX
            )
          op: assign_op.Equal
          rhs: 
            {
              (DQ <'^v(0|[1-9][0-9]*)'> 
                (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'> ch:'\\') <'.(0|[1-9][0-9]*)'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'> ch:'\\') 
                <'.(0|[1-9][0-9]*)-([a-zA-Z0-9]+)'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'> ch:'\\') <'.(0|[1-9][0-9]*)('> 
                (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'> ch:'\\') <'.(0|[1-9][0-9]*)'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'> ch:'\\') 
                <'+[-0-9a-z]*)?'> <Id.Lit_Dollar '$'>
              )
            }
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'KUBE_CI_VERSION_DASHED_REGEX='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'KUBE_CI_VERSION_DASHED_REGEX='>
          lhs: 
            (sh_lhs_expr.Name
              left: <Id.Lit_VarLike 'KUBE_CI_VERSION_DASHED_REGEX='>
              name: KUBE_CI_VERSION_DASHED_REGEX
            )
          op: assign_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]*)'
                > (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'> ch:'\\') <'+[-0-9a-z]*)?'>
              )
            }
        )
      ]
      redirects: []
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <create-kubeconfig>
      name: create-kubeconfig
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBECONFIG='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBECONFIG='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'KUBECONFIG='> name:KUBECONFIG)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (BracedVarSub
                        left: <Id.Left_DollarBrace '${'>
                        token: <Id.VSub_Name KUBECONFIG>
                        var_name: KUBECONFIG
                        suffix_op: 
                          (suffix_op.Unary
                            op: <Id.VTest_ColonHyphen _>
                            arg_word: {($ Id.VSub_DollarName DEFAULT_KUBECONFIG)}
                          )
                        right: <Id.Right_DollarBrace '}'>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'kubectl='> (DQ (${ Id.VSub_Name KUBE_ROOT) <'/cluster/kubectl.sh'>)}
              ]
              redirects: []
              do_fork: T
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'SECONDARY_KUBECONFIG='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'SECONDARY_KUBECONFIG='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'SECONDARY_KUBECONFIG='>
                      name: SECONDARY_KUBECONFIG
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (BracedVarSub
                        left: <Id.Left_DollarBrace '${'>
                        token: <Id.VSub_Name SECONDARY_KUBECONFIG>
                        var_name: SECONDARY_KUBECONFIG
                        suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                        right: <Id.Right_DollarBrace '}'>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'OVERRIDE_CONTEXT='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'OVERRIDE_CONTEXT='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'OVERRIDE_CONTEXT='>
                      name: OVERRIDE_CONTEXT
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (BracedVarSub
                        left: <Id.Left_DollarBrace '${'>
                        token: <Id.VSub_Name OVERRIDE_CONTEXT>
                        var_name: OVERRIDE_CONTEXT
                        suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                        right: <Id.Right_DollarBrace '}'>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Binary
                                  op_id: Id.BoolBinary_GlobNEqual
                                  left: {(DQ ($ Id.VSub_DollarName OVERRIDE_CONTEXT))}
                                  right: {(DQ )}
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'CONTEXT='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'CONTEXT='>
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'CONTEXT='> name:CONTEXT)
                          op: assign_op.Equal
                          rhs: {($ Id.VSub_DollarName OVERRIDE_CONTEXT)}
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [286 301]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'OLD_IFS='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'OLD_IFS='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'OLD_IFS='> name:OLD_IFS)
                  op: assign_op.Equal
                  rhs: {($ Id.VSub_DollarName IFS)}
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'IFS='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'IFS='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'IFS='> name:IFS)
                  op: assign_op.Equal
                  rhs: {(SQ <':'>)}
                )
              ]
              redirects: []
            )
            (command.ForEach
              keyword: <Id.KW_For for>
              iter_names: [cfg]
              iterable: (for_iter.Words words:[{(${ Id.VSub_Name KUBECONFIG)}])
              semi_tok: <Id.Op_Semi _>
              body: 
                (command.DoGroup
                  left: <Id.KW_Do do>
                  children: [
                    (command.If
                      if_kw: <Id.KW_If if>
                      arms: [
                        (IfArm
                          keyword: <Id.KW_If if>
                          cond: 
                            (condition.Shell
                              commands: [
                                (command.Sentence
                                  child: 
                                    (command.DBracket
                                      left: <Id.KW_DLeftBracket '[['>
                                      expr: 
                                        (bool_expr.LogicalNot
                                          child: 
                                            (bool_expr.Unary
                                              op_id: Id.BoolUnary_e
                                              child: {(DQ (${ Id.VSub_Name cfg))}
                                            )
                                        )
                                      right: <Id.Lit_DRightBracket ']]'>
                                      redirects: []
                                    )
                                  terminator: <Id.Op_Semi _>
                                )
                              ]
                            )
                          then_kw: <Id.KW_Then then>
                          action: [
                            (command.Simple
                              blame_tok: <mkdir>
                              more_env: []
                              words: [
                                {<mkdir>}
                                {<-p>}
                                {
                                  (DQ 
                                    (CommandSub
                                      left_token: <Id.Left_DollarParen '$('>
                                      child: 
                                        (command.Simple
                                          blame_tok: <dirname>
                                          more_env: []
                                          words: [{<dirname>} {(DQ (${ Id.VSub_Name cfg))}]
                                          redirects: []
                                          do_fork: T
                                        )
                                      right: <Id.Eof_RParen _>
                                    )
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                            (command.Simple
                              blame_tok: <touch>
                              more_env: []
                              words: [{<touch>} {(DQ (${ Id.VSub_Name cfg))}]
                              redirects: []
                              do_fork: T
                            )
                          ]
                          spids: [341 358]
                        )
                      ]
                      else_action: []
                      fi_kw: <Id.KW_Fi fi>
                      redirects: []
                    )
                  ]
                  right: <Id.KW_Done done>
                )
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'IFS='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'IFS='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'IFS='> name:IFS)
                  op: assign_op.Equal
                  rhs: {($ Id.VSub_DollarName OLD_IFS)}
                )
              ]
              redirects: []
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'cluster_args='> 
                  (ShArrayLiteral
                    left: <Id.Op_LParen _>
                    words: [
                      {
                        (DQ <'--server='> 
                          (BracedVarSub
                            left: <Id.Left_DollarBrace '${'>
                            token: <Id.VSub_Name KUBE_SERVER>
                            var_name: KUBE_SERVER
                            suffix_op: 
                              (suffix_op.Unary
                                op: <Id.VTest_ColonHyphen _>
                                arg_word: 
                                  {<'https:'> <Id.Lit_Slash '/'> <Id.Lit_Slash '/'> 
                                    (${ Id.VSub_Name KUBE_MASTER_IP)
                                  }
                              )
                            right: <Id.Right_DollarBrace '}'>
                          )
                        )
                      }
                    ]
                    right: <Id.Right_ShArrayLiteral _>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Unary
                                  op_id: Id.BoolUnary_z
                                  child: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          left: <Id.Left_DollarBrace '${'>
                                          token: <Id.VSub_Name CA_CERT>
                                          var_name: CA_CERT
                                          suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                          right: <Id.Right_DollarBrace '}'>
                                        )
                                      )
                                    }
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'cluster_args+='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'cluster_args+='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'cluster_args+='>
                              name: cluster_args
                            )
                          op: assign_op.PlusEqual
                          rhs: 
                            {
                              (ShArrayLiteral
                                left: <Id.Op_LParen _>
                                words: [{(DQ <'--insecure-skip-tls-verify=true'>)}]
                                right: <Id.Right_ShArrayLiteral _>
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [422 438]
                )
              ]
              else_kw: <Id.KW_Else else>
              else_action: [
                (command.ShAssignment
                  left: <Id.Lit_VarLike 'cluster_args+='>
                  pairs: [
                    (AssignPair
                      left: <Id.Lit_VarLike 'cluster_args+='>
                      lhs: 
                        (sh_lhs_expr.Name
                          left: <Id.Lit_VarLike 'cluster_args+='>
                          name: cluster_args
                        )
                      op: assign_op.PlusEqual
                      rhs: 
                        {
                          (ShArrayLiteral
                            left: <Id.Op_LParen _>
                            words: [
                              {(DQ <'--certificate-authority='> (${ Id.VSub_Name CA_CERT))}
                              {(DQ <'--embed-certs=true'>)}
                            ]
                            right: <Id.Right_ShArrayLiteral _>
                          )
                        }
                    )
                  ]
                  redirects: []
                )
              ]
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'user_args='> 
                  (ShArrayLiteral
                    left: <Id.Op_LParen _>
                    words: []
                    right: <Id.Right_ShArrayLiteral _>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.LogicalNot
                                  child: 
                                    (bool_expr.Unary
                                      op_id: Id.BoolUnary_z
                                      child: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name KUBE_BEARER_TOKEN>
                                              var_name: KUBE_BEARER_TOKEN
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                    )
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'user_args+='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'user_args+='>
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'user_args+='> name:user_args)
                          op: assign_op.PlusEqual
                          rhs: 
                            {
                              (ShArrayLiteral
                                left: <Id.Op_LParen _>
                                words: [{(DQ <'--token='> (${ Id.VSub_Name KUBE_BEARER_TOKEN))}]
                                right: <Id.Right_ShArrayLiteral _>
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [483 501]
                )
                (IfArm
                  keyword: <Id.KW_Elif elif>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.LogicalAnd
                                  left: 
                                    (bool_expr.LogicalNot
                                      child: 
                                        (bool_expr.Unary
                                          op_id: Id.BoolUnary_z
                                          child: 
                                            {
                                              (DQ 
                                                (BracedVarSub
                                                  left: <Id.Left_DollarBrace '${'>
                                                  token: <Id.VSub_Name KUBE_USER>
                                                  var_name: KUBE_USER
                                                  suffix_op: 
                                                    (suffix_op.Unary
                                                      op: <Id.VTest_ColonHyphen _>
                                                      arg_word: (rhs_word__Empty)
                                                    )
                                                  right: <Id.Right_DollarBrace '}'>
                                                )
                                              )
                                            }
                                        )
                                    )
                                  right: 
                                    (bool_expr.LogicalNot
                                      child: 
                                        (bool_expr.Unary
                                          op_id: Id.BoolUnary_z
                                          child: 
                                            {
                                              (DQ 
                                                (BracedVarSub
                                                  left: <Id.Left_DollarBrace '${'>
                                                  token: <Id.VSub_Name KUBE_PASSWORD>
                                                  var_name: KUBE_PASSWORD
                                                  suffix_op: 
                                                    (suffix_op.Unary
                                                      op: <Id.VTest_ColonHyphen _>
                                                      arg_word: (rhs_word__Empty)
                                                    )
                                                  right: <Id.Right_DollarBrace '}'>
                                                )
                                              )
                                            }
                                        )
                                    )
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'user_args+='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'user_args+='>
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'user_args+='> name:user_args)
                          op: assign_op.PlusEqual
                          rhs: 
                            {
                              (ShArrayLiteral
                                left: <Id.Op_LParen _>
                                words: [
                                  {(DQ <'--username='> (${ Id.VSub_Name KUBE_USER))}
                                  {(DQ <'--password='> (${ Id.VSub_Name KUBE_PASSWORD))}
                                ]
                                right: <Id.Right_ShArrayLiteral _>
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [519 550]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.LogicalAnd
                                  left: 
                                    (bool_expr.LogicalNot
                                      child: 
                                        (bool_expr.Unary
                                          op_id: Id.BoolUnary_z
                                          child: 
                                            {
                                              (DQ 
                                                (BracedVarSub
                                                  left: <Id.Left_DollarBrace '${'>
                                                  token: <Id.VSub_Name KUBE_CERT>
                                                  var_name: KUBE_CERT
                                                  suffix_op: 
                                                    (suffix_op.Unary
                                                      op: <Id.VTest_ColonHyphen _>
                                                      arg_word: (rhs_word__Empty)
                                                    )
                                                  right: <Id.Right_DollarBrace '}'>
                                                )
                                              )
                                            }
                                        )
                                    )
                                  right: 
                                    (bool_expr.LogicalNot
                                      child: 
                                        (bool_expr.Unary
                                          op_id: Id.BoolUnary_z
                                          child: 
                                            {
                                              (DQ 
                                                (BracedVarSub
                                                  left: <Id.Left_DollarBrace '${'>
                                                  token: <Id.VSub_Name KUBE_KEY>
                                                  var_name: KUBE_KEY
                                                  suffix_op: 
                                                    (suffix_op.Unary
                                                      op: <Id.VTest_ColonHyphen _>
                                                      arg_word: (rhs_word__Empty)
                                                    )
                                                  right: <Id.Right_DollarBrace '}'>
                                                )
                                              )
                                            }
                                        )
                                    )
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'user_args+='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'user_args+='>
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'user_args+='> name:user_args)
                          op: assign_op.PlusEqual
                          rhs: 
                            {
                              (ShArrayLiteral
                                left: <Id.Op_LParen _>
                                words: [
                                  {(DQ <'--client-certificate='> (${ Id.VSub_Name KUBE_CERT))}
                                  {(DQ <'--client-key='> (${ Id.VSub_Name KUBE_KEY))}
                                  {(DQ <'--embed-certs=true'>)}
                                ]
                                right: <Id.Right_ShArrayLiteral _>
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [579 610]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Simple
              blame_tok: <Id.Left_DoubleQuote '"'>
              more_env: [
                (EnvPair
                  left: <Id.Lit_VarLike 'KUBECONFIG='>
                  name: KUBECONFIG
                  val: {(DQ (${ Id.VSub_Name KUBECONFIG))}
                )
              ]
              words: [
                {(DQ (${ Id.VSub_Name kubectl))}
                {<config>}
                {<set-cluster>}
                {(DQ (${ Id.VSub_Name CONTEXT))}
                {
                  (DQ 
                    (BracedVarSub
                      left: <Id.Left_DollarBrace '${'>
                      token: <Id.VSub_Name cluster_args>
                      var_name: cluster_args
                      bracket_op: (bracket_op.WholeArray op_id:Id.Lit_At)
                      right: <Id.Right_DollarBrace '}'>
                    )
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Unary
                                  op_id: Id.BoolUnary_n
                                  child: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          left: <Id.Left_DollarBrace '${'>
                                          token: <Id.VSub_Name user_args>
                                          var_name: user_args
                                          bracket_op: (bracket_op.WholeArray op_id:Id.Lit_At)
                                          suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                          right: <Id.Right_DollarBrace '}'>
                                        )
                                      )
                                    }
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <Id.Left_DoubleQuote '"'>
                      more_env: [
                        (EnvPair
                          left: <Id.Lit_VarLike 'KUBECONFIG='>
                          name: KUBECONFIG
                          val: {(DQ (${ Id.VSub_Name KUBECONFIG))}
                        )
                      ]
                      words: [
                        {(DQ (${ Id.VSub_Name kubectl))}
                        {<config>}
                        {<set-credentials>}
                        {(DQ (${ Id.VSub_Name CONTEXT))}
                        {
                          (DQ 
                            (BracedVarSub
                              left: <Id.Left_DollarBrace '${'>
                              token: <Id.VSub_Name user_args>
                              var_name: user_args
                              bracket_op: (bracket_op.WholeArray op_id:Id.Lit_At)
                              right: <Id.Right_DollarBrace '}'>
                            )
                          )
                        }
                      ]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  spids: [678 697]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Simple
              blame_tok: <Id.Left_DoubleQuote '"'>
              more_env: [
                (EnvPair
                  left: <Id.Lit_VarLike 'KUBECONFIG='>
                  name: KUBECONFIG
                  val: {(DQ (${ Id.VSub_Name KUBECONFIG))}
                )
              ]
              words: [
                {(DQ (${ Id.VSub_Name kubectl))}
                {<config>}
                {<set-context>}
                {(DQ (${ Id.VSub_Name CONTEXT))}
                {<--cluster> <Id.Lit_Equals '='> (DQ (${ Id.VSub_Name CONTEXT))}
                {<--user> <Id.Lit_Equals '='> (DQ (${ Id.VSub_Name CONTEXT))}
              ]
              redirects: []
              do_fork: T
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Binary
                                  op_id: Id.BoolBinary_GlobNEqual
                                  left: {(DQ (${ Id.VSub_Name SECONDARY_KUBECONFIG))}
                                  right: {(DQ <true>)}
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <Id.Left_DoubleQuote '"'>
                      more_env: [
                        (EnvPair
                          left: <Id.Lit_VarLike 'KUBECONFIG='>
                          name: KUBECONFIG
                          val: {(DQ (${ Id.VSub_Name KUBECONFIG))}
                        )
                      ]
                      words: [
                        {(DQ (${ Id.VSub_Name kubectl))}
                        {<config>}
                        {<use-context>}
                        {(DQ (${ Id.VSub_Name CONTEXT))}
                        {<--cluster> <Id.Lit_Equals '='> (DQ (${ Id.VSub_Name CONTEXT))}
                      ]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  spids: [777 795]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.LogicalAnd
                                  left: 
                                    (bool_expr.LogicalNot
                                      child: 
                                        (bool_expr.Unary
                                          op_id: Id.BoolUnary_z
                                          child: 
                                            {
                                              (DQ 
                                                (BracedVarSub
                                                  left: <Id.Left_DollarBrace '${'>
                                                  token: <Id.VSub_Name KUBE_BEARER_TOKEN>
                                                  var_name: KUBE_BEARER_TOKEN
                                                  suffix_op: 
                                                    (suffix_op.Unary
                                                      op: <Id.VTest_ColonHyphen _>
                                                      arg_word: (rhs_word__Empty)
                                                    )
                                                  right: <Id.Right_DollarBrace '}'>
                                                )
                                              )
                                            }
                                        )
                                    )
                                  right: 
                                    (bool_expr.LogicalAnd
                                      left: 
                                        (bool_expr.LogicalNot
                                          child: 
                                            (bool_expr.Unary
                                              op_id: Id.BoolUnary_z
                                              child: 
                                                {
                                                  (DQ 
                                                    (BracedVarSub
                                                      left: <Id.Left_DollarBrace '${'>
                                                      token: <Id.VSub_Name KUBE_USER>
                                                      var_name: KUBE_USER
                                                      suffix_op: 
                                                        (suffix_op.Unary
                                                          op: <Id.VTest_ColonHyphen _>
                                                          arg_word: (rhs_word__Empty)
                                                        )
                                                      right: <Id.Right_DollarBrace '}'>
                                                    )
                                                  )
                                                }
                                            )
                                        )
                                      right: 
                                        (bool_expr.LogicalNot
                                          child: 
                                            (bool_expr.Unary
                                              op_id: Id.BoolUnary_z
                                              child: 
                                                {
                                                  (DQ 
                                                    (BracedVarSub
                                                      left: <Id.Left_DollarBrace '${'>
                                                      token: <Id.VSub_Name KUBE_PASSWORD>
                                                      var_name: KUBE_PASSWORD
                                                      suffix_op: 
                                                        (suffix_op.Unary
                                                          op: <Id.VTest_ColonHyphen _>
                                                          arg_word: (rhs_word__Empty)
                                                        )
                                                      right: <Id.Right_DollarBrace '}'>
                                                    )
                                                  )
                                                }
                                            )
                                        )
                                    )
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <Id.Left_DoubleQuote '"'>
                      more_env: [
                        (EnvPair
                          left: <Id.Lit_VarLike 'KUBECONFIG='>
                          name: KUBECONFIG
                          val: {(DQ (${ Id.VSub_Name KUBECONFIG))}
                        )
                      ]
                      words: [
                        {(DQ (${ Id.VSub_Name kubectl))}
                        {<config>}
                        {<set-credentials>}
                        {(DQ (${ Id.VSub_Name CONTEXT) <-basic-auth>)}
                        {(DQ <'--username='> (${ Id.VSub_Name KUBE_USER))}
                        {(DQ <'--password='> (${ Id.VSub_Name KUBE_PASSWORD))}
                      ]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  spids: [846 890]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Simple
              blame_tok: <echo>
              more_env: []
              words: [
                {<echo>}
                {
                  (DQ <'Wrote config for '> (${ Id.VSub_Name CONTEXT) <' to '> 
                    (${ Id.VSub_Name KUBECONFIG)
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <clear-kubeconfig>
      name: clear-kubeconfig
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <export>
              more_env: []
              words: [
                {<export>}
                {<Id.Lit_VarLike 'KUBECONFIG='> 
                  (BracedVarSub
                    left: <Id.Left_DollarBrace '${'>
                    token: <Id.VSub_Name KUBECONFIG>
                    var_name: KUBECONFIG
                    suffix_op: 
                      (suffix_op.Unary
                        op: <Id.VTest_ColonHyphen _>
                        arg_word: {($ Id.VSub_DollarName DEFAULT_KUBECONFIG)}
                      )
                    right: <Id.Right_DollarBrace '}'>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'OVERRIDE_CONTEXT='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'OVERRIDE_CONTEXT='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'OVERRIDE_CONTEXT='>
                      name: OVERRIDE_CONTEXT
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (BracedVarSub
                        left: <Id.Left_DollarBrace '${'>
                        token: <Id.VSub_Name OVERRIDE_CONTEXT>
                        var_name: OVERRIDE_CONTEXT
                        suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                        right: <Id.Right_DollarBrace '}'>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Binary
                                  op_id: Id.BoolBinary_GlobNEqual
                                  left: {(DQ ($ Id.VSub_DollarName OVERRIDE_CONTEXT))}
                                  right: {(DQ )}
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'CONTEXT='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'CONTEXT='>
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'CONTEXT='> name:CONTEXT)
                          op: assign_op.Equal
                          rhs: {($ Id.VSub_DollarName OVERRIDE_CONTEXT)}
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [997 1012]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'kubectl='> (DQ (${ Id.VSub_Name KUBE_ROOT) <'/cluster/kubectl.sh'>)}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'cc='> 
                  (CommandSub
                    left_token: <Id.Left_DollarParen '$('>
                    child: 
                      (command.Simple
                        blame_tok: <Id.Left_DoubleQuote '"'>
                        more_env: []
                        words: [
                          {(DQ (${ Id.VSub_Name kubectl))}
                          {<config>}
                          {<view>}
                          {<-o>}
                          {<Id.Lit_VarLike 'jsonpath='> (SQ <'{.current-context}'>)}
                        ]
                        redirects: []
                        do_fork: T
                      )
                    right: <Id.Eof_RParen _>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Binary
                                  op_id: Id.BoolBinary_GlobDEqual
                                  left: {(DQ (${ Id.VSub_Name cc))}
                                  right: {(DQ (${ Id.VSub_Name CONTEXT))}
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <Id.Left_DoubleQuote '"'>
                      more_env: []
                      words: [{(DQ (${ Id.VSub_Name kubectl))} {<config>} {<unset>} {<current-context>}]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  spids: [1061 1082]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Simple
              blame_tok: <Id.Left_DoubleQuote '"'>
              more_env: []
              words: [
                {(DQ (${ Id.VSub_Name kubectl))}
                {<config>}
                {<unset>}
                {(DQ <clusters.> (${ Id.VSub_Name CONTEXT))}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <Id.Left_DoubleQuote '"'>
              more_env: []
              words: [
                {(DQ (${ Id.VSub_Name kubectl))}
                {<config>}
                {<unset>}
                {(DQ <users.> (${ Id.VSub_Name CONTEXT))}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <Id.Left_DoubleQuote '"'>
              more_env: []
              words: [
                {(DQ (${ Id.VSub_Name kubectl))}
                {<config>}
                {<unset>}
                {(DQ <users.> (${ Id.VSub_Name CONTEXT) <-basic-auth>)}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <Id.Left_DoubleQuote '"'>
              more_env: []
              words: [
                {(DQ (${ Id.VSub_Name kubectl))}
                {<config>}
                {<unset>}
                {(DQ <contexts.> (${ Id.VSub_Name CONTEXT))}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <echo>
              more_env: []
              words: [
                {<echo>}
                {
                  (DQ <'Cleared config for '> (${ Id.VSub_Name CONTEXT) <' from '> 
                    (${ Id.VSub_Name KUBECONFIG)
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <create-kubeconfig-for-federation>
      name: create-kubeconfig-for-federation
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Binary
                                  op_id: Id.BoolBinary_GlobDEqual
                                  left: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          left: <Id.Left_DollarBrace '${'>
                                          token: <Id.VSub_Name FEDERATION>
                                          var_name: FEDERATION
                                          suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                          right: <Id.Right_DollarBrace '}'>
                                        )
                                      )
                                    }
                                  right: {(DQ <true>)}
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [{<echo>} {(DQ <'creating kubeconfig for federation secret'>)}]
                      redirects: []
                      do_fork: T
                    )
                    (command.Simple
                      blame_tok: <local>
                      more_env: []
                      words: [
                        {<local>}
                        {<Id.Lit_VarLike 'kubectl='> 
                          (DQ (${ Id.VSub_Name KUBE_ROOT) <'/cluster/kubectl.sh'>)
                        }
                      ]
                      redirects: []
                      do_fork: T
                    )
                    (command.Simple
                      blame_tok: <local>
                      more_env: []
                      words: [
                        {<local>}
                        {<Id.Lit_VarLike 'cc='> 
                          (CommandSub
                            left_token: <Id.Left_DollarParen '$('>
                            child: 
                              (command.Simple
                                blame_tok: <Id.Left_DoubleQuote '"'>
                                more_env: []
                                words: [
                                  {(DQ (${ Id.VSub_Name kubectl))}
                                  {<config>}
                                  {<view>}
                                  {<-o>}
                                  {<Id.Lit_VarLike 'jsonpath='> (SQ <'{.current-context}'>)}
                                ]
                                redirects: []
                                do_fork: T
                              )
                            right: <Id.Eof_RParen _>
                          )
                        }
                      ]
                      redirects: []
                      do_fork: T
                    )
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'KUBECONFIG_DIR='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'KUBECONFIG_DIR='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'KUBECONFIG_DIR='>
                              name: KUBECONFIG_DIR
                            )
                          op: assign_op.Equal
                          rhs: 
                            {
                              (CommandSub
                                left_token: <Id.Left_DollarParen '$('>
                                child: 
                                  (command.Simple
                                    blame_tok: <dirname>
                                    more_env: []
                                    words: [
                                      {<dirname>}
                                      {
                                        (BracedVarSub
                                          left: <Id.Left_DollarBrace '${'>
                                          token: <Id.VSub_Name KUBECONFIG>
                                          var_name: KUBECONFIG
                                          suffix_op: 
                                            (suffix_op.Unary
                                              op: <Id.VTest_ColonHyphen _>
                                              arg_word: {($ Id.VSub_DollarName DEFAULT_KUBECONFIG)}
                                            )
                                          right: <Id.Right_DollarBrace '}'>
                                        )
                                      }
                                    ]
                                    redirects: []
                                    do_fork: T
                                  )
                                right: <Id.Eof_RParen _>
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'KUBECONFIG_PATH='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'KUBECONFIG_PATH='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'KUBECONFIG_PATH='>
                              name: KUBECONFIG_PATH
                            )
                          op: assign_op.Equal
                          rhs: 
                            {
                              (DQ (${ Id.VSub_Name KUBECONFIG_DIR) 
                                <'/federation/kubernetes-apiserver/'> (${ Id.VSub_Name cc)
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                    (command.Simple
                      blame_tok: <mkdir>
                      more_env: []
                      words: [{<mkdir>} {<-p>} {(DQ (${ Id.VSub_Name KUBECONFIG_PATH))}]
                      redirects: []
                      do_fork: T
                    )
                    (command.Simple
                      blame_tok: <Id.Left_DoubleQuote '"'>
                      more_env: []
                      words: [
                        {(DQ (${ Id.VSub_Name kubectl))}
                        {<config>}
                        {<view>}
                        {<--minify>}
                        {<--flatten>}
                      ]
                      redirects: [
                        (Redir
                          op: <Id.Redir_Great '>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {(DQ (${ Id.VSub_Name KUBECONFIG_PATH) <'/kubeconfig'>)}
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [1206 1226]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <tear_down_alive_resources>
      name: tear_down_alive_resources
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'kubectl='> (DQ (${ Id.VSub_Name KUBE_ROOT) <'/cluster/kubectl.sh'>)}
              ]
              redirects: []
              do_fork: T
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.Left_DoubleQuote '"'>
                  more_env: []
                  words: [{(DQ (${ Id.VSub_Name kubectl))} {<delete>} {<deployments>} {<--all>}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <true>
                  more_env: []
                  words: [{<true>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DPipe _>]
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.Left_DoubleQuote '"'>
                  more_env: []
                  words: [{(DQ (${ Id.VSub_Name kubectl))} {<delete>} {<rc>} {<--all>}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <true>
                  more_env: []
                  words: [{<true>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DPipe _>]
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.Left_DoubleQuote '"'>
                  more_env: []
                  words: [{(DQ (${ Id.VSub_Name kubectl))} {<delete>} {<pods>} {<--all>}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <true>
                  more_env: []
                  words: [{<true>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DPipe _>]
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.Left_DoubleQuote '"'>
                  more_env: []
                  words: [{(DQ (${ Id.VSub_Name kubectl))} {<delete>} {<svc>} {<--all>}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <true>
                  more_env: []
                  words: [{<true>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DPipe _>]
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.Left_DoubleQuote '"'>
                  more_env: []
                  words: [{(DQ (${ Id.VSub_Name kubectl))} {<delete>} {<pvc>} {<--all>}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <true>
                  more_env: []
                  words: [{<true>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DPipe _>]
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <get-kubeconfig-basicauth>
      name: get-kubeconfig-basicauth
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <export>
              more_env: []
              words: [
                {<export>}
                {<Id.Lit_VarLike 'KUBECONFIG='> 
                  (BracedVarSub
                    left: <Id.Left_DollarBrace '${'>
                    token: <Id.VSub_Name KUBECONFIG>
                    var_name: KUBECONFIG
                    suffix_op: 
                      (suffix_op.Unary
                        op: <Id.VTest_ColonHyphen _>
                        arg_word: {($ Id.VSub_DollarName DEFAULT_KUBECONFIG)}
                      )
                    right: <Id.Right_DollarBrace '}'>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'cc='> 
                  (CommandSub
                    left_token: <Id.Left_DollarParen '$('>
                    child: 
                      (command.Simple
                        blame_tok: <Id.Left_DoubleQuote '"'>
                        more_env: []
                        words: [
                          {(DQ (${ Id.VSub_Name KUBE_ROOT) <'/cluster/kubectl.sh'>)}
                          {<config>}
                          {<view>}
                          {<-o>}
                          {<Id.Lit_VarLike 'jsonpath='> (DQ <'{.current-context}'>)}
                        ]
                        redirects: []
                        do_fork: T
                      )
                    right: <Id.Eof_RParen _>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.LogicalNot
                                  child: 
                                    (bool_expr.Unary
                                      op_id: Id.BoolUnary_z
                                      child: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name KUBE_CONTEXT>
                                              var_name: KUBE_CONTEXT
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                    )
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'cc='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'cc='>
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'cc='> name:cc)
                          op: assign_op.Equal
                          rhs: {(DQ (${ Id.VSub_Name KUBE_CONTEXT))}
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [1518 1536]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'user='> 
                  (CommandSub
                    left_token: <Id.Left_DollarParen '$('>
                    child: 
                      (command.Simple
                        blame_tok: <Id.Left_DoubleQuote '"'>
                        more_env: []
                        words: [
                          {(DQ (${ Id.VSub_Name KUBE_ROOT) <'/cluster/kubectl.sh'>)}
                          {<config>}
                          {<view>}
                          {<-o>}
                          {<Id.Lit_VarLike 'jsonpath='> 
                            (DQ <'{.contexts[?(@.name == '> 
                              (word_part.EscapedLiteral
                                token: <Id.Lit_EscapedChar '\\"'>
                                ch: '"'
                              ) (${ Id.VSub_Name cc) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'> ch:'"') 
                              <')].context.user}'>
                            )
                          }
                        ]
                        redirects: []
                        do_fork: T
                      )
                    right: <Id.Eof_RParen _>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <get-kubeconfig-user-basicauth>
              more_env: []
              words: [{<get-kubeconfig-user-basicauth>} {(DQ (${ Id.VSub_Name user))}]
              redirects: []
              do_fork: T
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.LogicalOr
                                  left: 
                                    (bool_expr.Unary
                                      op_id: Id.BoolUnary_z
                                      child: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name KUBE_USER>
                                              var_name: KUBE_USER
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                    )
                                  right: 
                                    (bool_expr.Unary
                                      op_id: Id.BoolUnary_z
                                      child: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name KUBE_PASSWORD>
                                              var_name: KUBE_PASSWORD
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                    )
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <get-kubeconfig-user-basicauth>
                      more_env: []
                      words: [
                        {<get-kubeconfig-user-basicauth>}
                        {(DQ (${ Id.VSub_Name user) <-basic-auth>)}
                      ]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  spids: [1590 1617]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <get-kubeconfig-user-basicauth>
      name: get-kubeconfig-user-basicauth
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBE_USER='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBE_USER='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'KUBE_USER='> name:KUBE_USER)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <Id.Left_DoubleQuote '"'>
                            more_env: []
                            words: [
                              {(DQ (${ Id.VSub_Name KUBE_ROOT) <'/cluster/kubectl.sh'>)}
                              {<config>}
                              {<view>}
                              {<-o>}
                              {<Id.Lit_VarLike 'jsonpath='> 
                                (DQ <'{.users[?(@.name == '> 
                                  (word_part.EscapedLiteral
                                    token: <Id.Lit_EscapedChar '\\"'>
                                    ch: '"'
                                  ) ($ Id.VSub_Number 1) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'> ch:'"') 
                                  <')].user.username}'>
                                )
                              }
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBE_PASSWORD='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBE_PASSWORD='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'KUBE_PASSWORD='> name:KUBE_PASSWORD)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <Id.Left_DoubleQuote '"'>
                            more_env: []
                            words: [
                              {(DQ (${ Id.VSub_Name KUBE_ROOT) <'/cluster/kubectl.sh'>)}
                              {<config>}
                              {<view>}
                              {<-o>}
                              {<Id.Lit_VarLike 'jsonpath='> 
                                (DQ <'{.users[?(@.name == '> 
                                  (word_part.EscapedLiteral
                                    token: <Id.Lit_EscapedChar '\\"'>
                                    ch: '"'
                                  ) ($ Id.VSub_Number 1) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'> ch:'"') 
                                  <')].user.password}'>
                                )
                              }
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <gen-kube-basicauth>
      name: gen-kube-basicauth
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBE_USER='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBE_USER='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'KUBE_USER='> name:KUBE_USER)
                  op: assign_op.Equal
                  rhs: {<admin>}
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBE_PASSWORD='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBE_PASSWORD='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'KUBE_PASSWORD='> name:KUBE_PASSWORD)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <python>
                            more_env: []
                            words: [
                              {<python>}
                              {<-c>}
                              {
                                (SQ 
                                  <
'import string,random; print("".join(random.SystemRandom().choice(string.ascii_letters + string.digits) for _ in range(16)))'
                                  >
                                )
                              }
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <get-kubeconfig-bearertoken>
      name: get-kubeconfig-bearertoken
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <export>
              more_env: []
              words: [
                {<export>}
                {<Id.Lit_VarLike 'KUBECONFIG='> 
                  (BracedVarSub
                    left: <Id.Left_DollarBrace '${'>
                    token: <Id.VSub_Name KUBECONFIG>
                    var_name: KUBECONFIG
                    suffix_op: 
                      (suffix_op.Unary
                        op: <Id.VTest_ColonHyphen _>
                        arg_word: {($ Id.VSub_DollarName DEFAULT_KUBECONFIG)}
                      )
                    right: <Id.Right_DollarBrace '}'>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'cc='> 
                  (CommandSub
                    left_token: <Id.Left_DollarParen '$('>
                    child: 
                      (command.Simple
                        blame_tok: <Id.Left_DoubleQuote '"'>
                        more_env: []
                        words: [
                          {(DQ (${ Id.VSub_Name KUBE_ROOT) <'/cluster/kubectl.sh'>)}
                          {<config>}
                          {<view>}
                          {<-o>}
                          {<Id.Lit_VarLike 'jsonpath='> (DQ <'{.current-context}'>)}
                        ]
                        redirects: []
                        do_fork: T
                      )
                    right: <Id.Eof_RParen _>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.LogicalNot
                                  child: 
                                    (bool_expr.Unary
                                      op_id: Id.BoolUnary_z
                                      child: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name KUBE_CONTEXT>
                                              var_name: KUBE_CONTEXT
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                    )
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'cc='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'cc='>
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'cc='> name:cc)
                          op: assign_op.Equal
                          rhs: {(DQ (${ Id.VSub_Name KUBE_CONTEXT))}
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [1862 1880]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'user='> 
                  (CommandSub
                    left_token: <Id.Left_DollarParen '$('>
                    child: 
                      (command.Simple
                        blame_tok: <Id.Left_DoubleQuote '"'>
                        more_env: []
                        words: [
                          {(DQ (${ Id.VSub_Name KUBE_ROOT) <'/cluster/kubectl.sh'>)}
                          {<config>}
                          {<view>}
                          {<-o>}
                          {<Id.Lit_VarLike 'jsonpath='> 
                            (DQ <'{.contexts[?(@.name == '> 
                              (word_part.EscapedLiteral
                                token: <Id.Lit_EscapedChar '\\"'>
                                ch: '"'
                              ) (${ Id.VSub_Name cc) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'> ch:'"') 
                              <')].context.user}'>
                            )
                          }
                        ]
                        redirects: []
                        do_fork: T
                      )
                    right: <Id.Eof_RParen _>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBE_BEARER_TOKEN='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBE_BEARER_TOKEN='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'KUBE_BEARER_TOKEN='>
                      name: KUBE_BEARER_TOKEN
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <Id.Left_DoubleQuote '"'>
                            more_env: []
                            words: [
                              {(DQ (${ Id.VSub_Name KUBE_ROOT) <'/cluster/kubectl.sh'>)}
                              {<config>}
                              {<view>}
                              {<-o>}
                              {<Id.Lit_VarLike 'jsonpath='> 
                                (DQ <'{.users[?(@.name == '> 
                                  (word_part.EscapedLiteral
                                    token: <Id.Lit_EscapedChar '\\"'>
                                    ch: '"'
                                  ) (${ Id.VSub_Name user) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'> ch:'"') 
                                  <')].user.token}'>
                                )
                              }
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <gen-kube-bearertoken>
      name: gen-kube-bearertoken
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBE_BEARER_TOKEN='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBE_BEARER_TOKEN='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'KUBE_BEARER_TOKEN='>
                      name: KUBE_BEARER_TOKEN
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Simple
                                blame_tok: <dd>
                                more_env: []
                                words: [
                                  {<dd>}
                                  {<Id.Lit_VarLike 'if='> <'/dev/urandom'>}
                                  {<Id.Lit_VarLike 'bs='> <128>}
                                  {<Id.Lit_VarLike 'count='> <1>}
                                ]
                                redirects: [
                                  (Redir
                                    op: <Id.Redir_Great '2>'>
                                    loc: (redir_loc.Fd fd:2)
                                    arg: {<'/dev/null'>}
                                  )
                                ]
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <base64>
                                more_env: []
                                words: [{<base64>}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <tr>
                                more_env: []
                                words: [{<tr>} {<-d>} {(DQ <'=+/'>)}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <dd>
                                more_env: []
                                words: [
                                  {<dd>}
                                  {<Id.Lit_VarLike 'bs='> <32>}
                                  {<Id.Lit_VarLike 'count='> <1>}
                                ]
                                redirects: [
                                  (Redir
                                    op: <Id.Redir_Great '2>'>
                                    loc: (redir_loc.Fd fd:2)
                                    arg: {<'/dev/null'>}
                                  )
                                ]
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _> <Id.Op_Pipe _> <Id.Op_Pipe _>]
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <gen-uid>
      name: gen-uid
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBE_UID='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBE_UID='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'KUBE_UID='> name:KUBE_UID)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <python>
                            more_env: []
                            words: [
                              {<python>}
                              {<-c>}
                              {(SQ <'import uuid; print(uuid.uuid1().fields[0])'>)}
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <load-or-gen-kube-basicauth>
      name: load-or-gen-kube-basicauth
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.LogicalNot
                                  child: 
                                    (bool_expr.Unary
                                      op_id: Id.BoolUnary_z
                                      child: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name KUBE_CONTEXT>
                                              var_name: KUBE_CONTEXT
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                    )
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <get-kubeconfig-basicauth>
                      more_env: []
                      words: [{<get-kubeconfig-basicauth>}]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  spids: [2071 2089]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.LogicalOr
                                  left: 
                                    (bool_expr.Unary
                                      op_id: Id.BoolUnary_z
                                      child: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name KUBE_USER>
                                              var_name: KUBE_USER
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                    )
                                  right: 
                                    (bool_expr.Unary
                                      op_id: Id.BoolUnary_z
                                      child: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name KUBE_PASSWORD>
                                              var_name: KUBE_PASSWORD
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                    )
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <gen-kube-basicauth>
                      more_env: []
                      words: [{<gen-kube-basicauth>}]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  spids: [2099 2126]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Pipeline
                              negated: <Id.KW_Bang '!'>
                              children: [
                                (command.DBracket
                                  left: <Id.KW_DLeftBracket '[['>
                                  expr: 
                                    (bool_expr.Binary
                                      op_id: Id.BoolBinary_EqualTilde
                                      left: {(DQ (${ Id.VSub_Name KUBE_USER))}
                                      right: 
                                        {<Id.Lit_Other '^'> <Id.Lit_Other '['> <-> <Id.Lit_Other .> <_> 
                                          <Id.Lit_Other '@'> <a-zA-Z0-9> <Id.Lit_Other ']'> <Id.Lit_Other '+'> <Id.Lit_Other '$'>
                                        }
                                    )
                                  right: <Id.Lit_DRightBracket ']]'>
                                  redirects: []
                                )
                              ]
                              ops: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [{<echo>} {(DQ <'Bad KUBE_USER string.'>)}]
                      redirects: []
                      do_fork: T
                    )
                    (command.ControlFlow
                      keyword: <Id.ControlFlow_Exit exit>
                      arg_word: {<1>}
                    )
                  ]
                  spids: [2140 2168]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Pipeline
                              negated: <Id.KW_Bang '!'>
                              children: [
                                (command.DBracket
                                  left: <Id.KW_DLeftBracket '[['>
                                  expr: 
                                    (bool_expr.Binary
                                      op_id: Id.BoolBinary_EqualTilde
                                      left: {(DQ (${ Id.VSub_Name KUBE_PASSWORD))}
                                      right: 
                                        {<Id.Lit_Other '^'> <Id.Lit_Other '['> <-> <Id.Lit_Other .> <_> 
                                          <Id.Lit_Other '@'> <Id.Lit_Other '#'> <Id.Lit_Other '%'> <'/a-zA-Z0-9'> <Id.Lit_Other ']'> <Id.Lit_Other '+'> 
                                          <Id.Lit_Other '$'>
                                        }
                                    )
                                  right: <Id.Lit_DRightBracket ']]'>
                                  redirects: []
                                )
                              ]
                              ops: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [{<echo>} {(DQ <'Bad KUBE_PASSWORD string.'>)}]
                      redirects: []
                      do_fork: T
                    )
                    (command.ControlFlow
                      keyword: <Id.ControlFlow_Exit exit>
                      arg_word: {<1>}
                    )
                  ]
                  spids: [2186 2216]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <load-or-gen-kube-bearertoken>
      name: load-or-gen-kube-bearertoken
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.LogicalNot
                                  child: 
                                    (bool_expr.Unary
                                      op_id: Id.BoolUnary_z
                                      child: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name KUBE_CONTEXT>
                                              var_name: KUBE_CONTEXT
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                    )
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <get-kubeconfig-bearertoken>
                      more_env: []
                      words: [{<get-kubeconfig-bearertoken>}]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  spids: [2245 2263]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Unary
                                  op_id: Id.BoolUnary_z
                                  child: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          left: <Id.Left_DollarBrace '${'>
                                          token: <Id.VSub_Name KUBE_BEARER_TOKEN>
                                          var_name: KUBE_BEARER_TOKEN
                                          suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                          right: <Id.Right_DollarBrace '}'>
                                        )
                                      )
                                    }
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <gen-kube-bearertoken>
                      more_env: []
                      words: [{<gen-kube-bearertoken>}]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  spids: [2272 2288]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <detect-master-from-kubeconfig>
      name: detect-master-from-kubeconfig
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <export>
              more_env: []
              words: [
                {<export>}
                {<Id.Lit_VarLike 'KUBECONFIG='> 
                  (BracedVarSub
                    left: <Id.Left_DollarBrace '${'>
                    token: <Id.VSub_Name KUBECONFIG>
                    var_name: KUBECONFIG
                    suffix_op: 
                      (suffix_op.Unary
                        op: <Id.VTest_ColonHyphen _>
                        arg_word: {($ Id.VSub_DollarName DEFAULT_KUBECONFIG)}
                      )
                    right: <Id.Right_DollarBrace '}'>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'cc='> 
                  (CommandSub
                    left_token: <Id.Left_DollarParen '$('>
                    child: 
                      (command.Simple
                        blame_tok: <Id.Left_DoubleQuote '"'>
                        more_env: []
                        words: [
                          {(DQ (${ Id.VSub_Name KUBE_ROOT) <'/cluster/kubectl.sh'>)}
                          {<config>}
                          {<view>}
                          {<-o>}
                          {<Id.Lit_VarLike 'jsonpath='> (DQ <'{.current-context}'>)}
                        ]
                        redirects: []
                        do_fork: T
                      )
                    right: <Id.Eof_RParen _>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.LogicalNot
                                  child: 
                                    (bool_expr.Unary
                                      op_id: Id.BoolUnary_z
                                      child: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name KUBE_CONTEXT>
                                              var_name: KUBE_CONTEXT
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                    )
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'cc='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'cc='>
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'cc='> name:cc)
                          op: assign_op.Equal
                          rhs: {(DQ (${ Id.VSub_Name KUBE_CONTEXT))}
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [2376 2394]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'cluster='> 
                  (CommandSub
                    left_token: <Id.Left_DollarParen '$('>
                    child: 
                      (command.Simple
                        blame_tok: <Id.Left_DoubleQuote '"'>
                        more_env: []
                        words: [
                          {(DQ (${ Id.VSub_Name KUBE_ROOT) <'/cluster/kubectl.sh'>)}
                          {<config>}
                          {<view>}
                          {<-o>}
                          {<Id.Lit_VarLike 'jsonpath='> 
                            (DQ <'{.contexts[?(@.name == '> 
                              (word_part.EscapedLiteral
                                token: <Id.Lit_EscapedChar '\\"'>
                                ch: '"'
                              ) (${ Id.VSub_Name cc) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'> ch:'"') 
                              <')].context.cluster}'>
                            )
                          }
                        ]
                        redirects: []
                        do_fork: T
                      )
                    right: <Id.Eof_RParen _>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBE_MASTER_URL='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBE_MASTER_URL='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'KUBE_MASTER_URL='>
                      name: KUBE_MASTER_URL
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <Id.Left_DoubleQuote '"'>
                            more_env: []
                            words: [
                              {(DQ (${ Id.VSub_Name KUBE_ROOT) <'/cluster/kubectl.sh'>)}
                              {<config>}
                              {<view>}
                              {<-o>}
                              {<Id.Lit_VarLike 'jsonpath='> 
                                (DQ <'{.clusters[?(@.name == '> 
                                  (word_part.EscapedLiteral
                                    token: <Id.Lit_EscapedChar '\\"'>
                                    ch: '"'
                                  ) (${ Id.VSub_Name cluster) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'> ch:'"') 
                                  <')].cluster.server}'>
                                )
                              }
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <set_binary_version>
      name: set_binary_version
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Binary
                                  op_id: Id.BoolBinary_EqualTilde
                                  left: {(DQ (${ Id.VSub_Number 1))}
                                  right: {(DQ <'/'>)}
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <read>
                      more_env: [(EnvPair left:<Id.Lit_VarLike 'IFS='> name:IFS val:{(SQ <'/'>)})]
                      words: [{<read>} {<-a>} {<path>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_TLess '<<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: {(DQ (${ Id.VSub_Number 1))}
                        )
                      ]
                      do_fork: T
                    )
                    (command.If
                      if_kw: <Id.KW_If if>
                      arms: [
                        (IfArm
                          keyword: <Id.KW_If if>
                          cond: 
                            (condition.Shell
                              commands: [
                                (command.Sentence
                                  child: 
                                    (command.DBracket
                                      left: <Id.KW_DLeftBracket '[['>
                                      expr: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobDEqual
                                          left: 
                                            {
                                              (DQ 
                                                (BracedVarSub
                                                  left: <Id.Left_DollarBrace '${'>
                                                  token: <Id.VSub_Name path>
                                                  var_name: path
                                                  bracket_op: 
                                                    (bracket_op.ArrayIndex
                                                      expr: {<Id.Lit_Digits 0>}
                                                    )
                                                  right: <Id.Right_DollarBrace '}'>
                                                )
                                              )
                                            }
                                          right: {(DQ <release>)}
                                        )
                                      right: <Id.Lit_DRightBracket ']]'>
                                      redirects: []
                                    )
                                  terminator: <Id.Op_Semi _>
                                )
                              ]
                            )
                          then_kw: <Id.KW_Then then>
                          action: [
                            (command.ShAssignment
                              left: <Id.Lit_VarLike 'KUBE_VERSION='>
                              pairs: [
                                (AssignPair
                                  left: <Id.Lit_VarLike 'KUBE_VERSION='>
                                  lhs: 
                                    (sh_lhs_expr.Name
                                      left: <Id.Lit_VarLike 'KUBE_VERSION='>
                                      name: KUBE_VERSION
                                    )
                                  op: assign_op.Equal
                                  rhs: 
                                    {
                                      (CommandSub
                                        left_token: <Id.Left_DollarParen '$('>
                                        child: 
                                          (command.Simple
                                            blame_tok: <gsutil>
                                            more_env: []
                                            words: [
                                              {<gsutil>}
                                              {<cat>}
                                              {
                                                (DQ <'gs://kubernetes-release/'> (${ Id.VSub_Number 1) 
                                                  <.txt>
                                                )
                                              }
                                            ]
                                            redirects: []
                                            do_fork: T
                                          )
                                        right: <Id.Eof_RParen _>
                                      )
                                    }
                                )
                              ]
                              redirects: []
                            )
                          ]
                          spids: [2552 2574]
                        )
                      ]
                      else_kw: <Id.KW_Else else>
                      else_action: [
                        (command.ShAssignment
                          left: <Id.Lit_VarLike 'KUBE_VERSION='>
                          pairs: [
                            (AssignPair
                              left: <Id.Lit_VarLike 'KUBE_VERSION='>
                              lhs: 
                                (sh_lhs_expr.Name
                                  left: <Id.Lit_VarLike 'KUBE_VERSION='>
                                  name: KUBE_VERSION
                                )
                              op: assign_op.Equal
                              rhs: 
                                {
                                  (CommandSub
                                    left_token: <Id.Left_DollarParen '$('>
                                    child: 
                                      (command.Simple
                                        blame_tok: <gsutil>
                                        more_env: []
                                        words: [
                                          {<gsutil>}
                                          {<cat>}
                                          {
                                            (DQ <'gs://kubernetes-release-dev/'> (${ Id.VSub_Number 1) 
                                              <.txt>
                                            )
                                          }
                                        ]
                                        redirects: []
                                        do_fork: T
                                      )
                                    right: <Id.Eof_RParen _>
                                  )
                                }
                            )
                          ]
                          redirects: []
                        )
                      ]
                      fi_kw: <Id.KW_Fi fi>
                      redirects: []
                    )
                  ]
                  spids: [2510 2529]
                )
              ]
              else_kw: <Id.KW_Else else>
              else_action: [
                (command.ShAssignment
                  left: <Id.Lit_VarLike 'KUBE_VERSION='>
                  pairs: [
                    (AssignPair
                      left: <Id.Lit_VarLike 'KUBE_VERSION='>
                      lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'KUBE_VERSION='> name:KUBE_VERSION)
                      op: assign_op.Equal
                      rhs: {(${ Id.VSub_Number 1)}
                    )
                  ]
                  redirects: []
                )
              ]
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <tars_from_version>
      name: tars_from_version
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [{<local>} {<Id.Lit_VarLike 'sha1sum='> (DQ )}]
              redirects: []
              do_fork: T
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <which>
                              more_env: []
                              words: [{<which>} {<sha1sum>}]
                              redirects: [
                                (Redir
                                  op: <Id.Redir_Great '>'>
                                  loc: (redir_loc.Fd fd:1)
                                  arg: {<'/dev/null'>}
                                )
                                (Redir
                                  op: <Id.Redir_GreatAnd '2>&'>
                                  loc: (redir_loc.Fd fd:2)
                                  arg: {<1>}
                                )
                              ]
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'sha1sum='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'sha1sum='>
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'sha1sum='> name:sha1sum)
                          op: assign_op.Equal
                          rhs: {(DQ <sha1sum>)}
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [2687 2700]
                )
              ]
              else_kw: <Id.KW_Else else>
              else_action: [
                (command.ShAssignment
                  left: <Id.Lit_VarLike 'sha1sum='>
                  pairs: [
                    (AssignPair
                      left: <Id.Lit_VarLike 'sha1sum='>
                      lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'sha1sum='> name:sha1sum)
                      op: assign_op.Equal
                      rhs: {(DQ <'shasum -a1'>)}
                    )
                  ]
                  redirects: []
                )
              ]
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Unary
                                  op_id: Id.BoolUnary_z
                                  child: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          left: <Id.Left_DollarBrace '${'>
                                          token: <Id.VSub_Name KUBE_VERSION>
                                          var_name: KUBE_VERSION
                                          suffix_op: (suffix_op.Unary op:<Id.VTest_Hyphen _> arg_word:(rhs_word__Empty))
                                          right: <Id.Right_DollarBrace '}'>
                                        )
                                      )
                                    }
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <find-release-tars>
                      more_env: []
                      words: [{<find-release-tars>}]
                      redirects: []
                      do_fork: T
                    )
                    (command.Simple
                      blame_tok: <upload-server-tars>
                      more_env: []
                      words: [{<upload-server-tars>}]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  spids: [2722 2738]
                )
                (IfArm
                  keyword: <Id.KW_Elif elif>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Binary
                                  op_id: Id.BoolBinary_EqualTilde
                                  left: {(${ Id.VSub_Name KUBE_VERSION)}
                                  right: {(${ Id.VSub_Name KUBE_RELEASE_VERSION_REGEX)}
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'SERVER_BINARY_TAR_URL='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'SERVER_BINARY_TAR_URL='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'SERVER_BINARY_TAR_URL='>
                              name: SERVER_BINARY_TAR_URL
                            )
                          op: assign_op.Equal
                          rhs: 
                            {
                              (DQ <'https://storage.googleapis.com/kubernetes-release/release/'> 
                                (${ Id.VSub_Name KUBE_VERSION) <'/kubernetes-server-linux-amd64.tar.gz'>
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'SALT_TAR_URL='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'SALT_TAR_URL='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'SALT_TAR_URL='>
                              name: SALT_TAR_URL
                            )
                          op: assign_op.Equal
                          rhs: 
                            {
                              (DQ <'https://storage.googleapis.com/kubernetes-release/release/'> 
                                (${ Id.VSub_Name KUBE_VERSION) <'/kubernetes-salt.tar.gz'>
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'KUBE_MANIFESTS_TAR_URL='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'KUBE_MANIFESTS_TAR_URL='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'KUBE_MANIFESTS_TAR_URL='>
                              name: KUBE_MANIFESTS_TAR_URL
                            )
                          op: assign_op.Equal
                          rhs: 
                            {
                              (DQ 
                                (BracedVarSub
                                  left: <Id.Left_DollarBrace '${'>
                                  token: <Id.VSub_Name SERVER_BINARY_TAR_URL>
                                  var_name: SERVER_BINARY_TAR_URL
                                  suffix_op: 
                                    (suffix_op.PatSub
                                      pat: {<server-linux-amd64>}
                                      replace: {<manifests>}
                                      replace_mode: Id.Undefined_Tok
                                      slash_tok: <Id.VOp2_Slash _>
                                    )
                                  right: <Id.Right_DollarBrace '}'>
                                )
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'KUBE_MANIFESTS_TAR_HASH='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'KUBE_MANIFESTS_TAR_HASH='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'KUBE_MANIFESTS_TAR_HASH='>
                              name: KUBE_MANIFESTS_TAR_HASH
                            )
                          op: assign_op.Equal
                          rhs: 
                            {
                              (CommandSub
                                left_token: <Id.Left_DollarParen '$('>
                                child: 
                                  (command.Pipeline
                                    children: [
                                      (command.Simple
                                        blame_tok: <curl>
                                        more_env: []
                                        words: [
                                          {<curl>}
                                          {(${ Id.VSub_Name KUBE_MANIFESTS_TAR_URL)}
                                          {<--silent>}
                                          {<--show-error>}
                                        ]
                                        redirects: []
                                        do_fork: T
                                      )
                                      (command.Simple
                                        blame_tok: <Id.Left_DollarBrace '${'>
                                        more_env: []
                                        words: [{(${ Id.VSub_Name sha1sum)}]
                                        redirects: []
                                        do_fork: T
                                      )
                                      (command.Simple
                                        blame_tok: <awk>
                                        more_env: []
                                        words: [{<awk>} {(SQ <'{print $1}'>)}]
                                        redirects: []
                                        do_fork: T
                                      )
                                    ]
                                    ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                                  )
                                right: <Id.Eof_RParen _>
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [2747 2764]
                )
                (IfArm
                  keyword: <Id.KW_Elif elif>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Binary
                                  op_id: Id.BoolBinary_EqualTilde
                                  left: {(${ Id.VSub_Name KUBE_VERSION)}
                                  right: {(${ Id.VSub_Name KUBE_CI_VERSION_REGEX)}
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'SERVER_BINARY_TAR_URL='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'SERVER_BINARY_TAR_URL='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'SERVER_BINARY_TAR_URL='>
                              name: SERVER_BINARY_TAR_URL
                            )
                          op: assign_op.Equal
                          rhs: 
                            {
                              (DQ <'https://storage.googleapis.com/kubernetes-release-dev/ci/'> 
                                (${ Id.VSub_Name KUBE_VERSION) <'/kubernetes-server-linux-amd64.tar.gz'>
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'SALT_TAR_URL='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'SALT_TAR_URL='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'SALT_TAR_URL='>
                              name: SALT_TAR_URL
                            )
                          op: assign_op.Equal
                          rhs: 
                            {
                              (DQ <'https://storage.googleapis.com/kubernetes-release-dev/ci/'> 
                                (${ Id.VSub_Name KUBE_VERSION) <'/kubernetes-salt.tar.gz'>
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'KUBE_MANIFESTS_TAR_URL='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'KUBE_MANIFESTS_TAR_URL='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'KUBE_MANIFESTS_TAR_URL='>
                              name: KUBE_MANIFESTS_TAR_URL
                            )
                          op: assign_op.Equal
                          rhs: 
                            {
                              (DQ 
                                (BracedVarSub
                                  left: <Id.Left_DollarBrace '${'>
                                  token: <Id.VSub_Name SERVER_BINARY_TAR_URL>
                                  var_name: SERVER_BINARY_TAR_URL
                                  suffix_op: 
                                    (suffix_op.PatSub
                                      pat: {<server-linux-amd64>}
                                      replace: {<manifests>}
                                      replace_mode: Id.Undefined_Tok
                                      slash_tok: <Id.VOp2_Slash _>
                                    )
                                  right: <Id.Right_DollarBrace '}'>
                                )
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'KUBE_MANIFESTS_TAR_HASH='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'KUBE_MANIFESTS_TAR_HASH='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'KUBE_MANIFESTS_TAR_HASH='>
                              name: KUBE_MANIFESTS_TAR_HASH
                            )
                          op: assign_op.Equal
                          rhs: 
                            {
                              (CommandSub
                                left_token: <Id.Left_DollarParen '$('>
                                child: 
                                  (command.Pipeline
                                    children: [
                                      (command.Simple
                                        blame_tok: <curl>
                                        more_env: []
                                        words: [
                                          {<curl>}
                                          {(${ Id.VSub_Name KUBE_MANIFESTS_TAR_URL)}
                                          {<--silent>}
                                          {<--show-error>}
                                        ]
                                        redirects: []
                                        do_fork: T
                                      )
                                      (command.Simple
                                        blame_tok: <Id.Left_DollarBrace '${'>
                                        more_env: []
                                        words: [{(${ Id.VSub_Name sha1sum)}]
                                        redirects: []
                                        do_fork: T
                                      )
                                      (command.Simple
                                        blame_tok: <awk>
                                        more_env: []
                                        words: [{<awk>} {(SQ <'{print $1}'>)}]
                                        redirects: []
                                        do_fork: T
                                      )
                                    ]
                                    ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                                  )
                                right: <Id.Eof_RParen _>
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [2831 2848]
                )
              ]
              else_kw: <Id.KW_Else else>
              else_action: [
                (command.Simple
                  blame_tok: <echo>
                  more_env: []
                  words: [{<echo>} {(DQ <'Version doesn\'t match regexp'>)}]
                  redirects: [(Redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})]
                  do_fork: T
                )
                (command.ControlFlow keyword:<Id.ControlFlow_Exit exit> arg_word:{<1>})
              ]
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Pipeline
                              negated: <Id.KW_Bang '!'>
                              children: [
                                (command.ShAssignment
                                  left: <Id.Lit_VarLike 'SERVER_BINARY_TAR_HASH='>
                                  pairs: [
                                    (AssignPair
                                      left: <Id.Lit_VarLike 'SERVER_BINARY_TAR_HASH='>
                                      lhs: 
                                        (sh_lhs_expr.Name
                                          left: <Id.Lit_VarLike 'SERVER_BINARY_TAR_HASH='>
                                          name: SERVER_BINARY_TAR_HASH
                                        )
                                      op: assign_op.Equal
                                      rhs: 
                                        {
                                          (CommandSub
                                            left_token: <Id.Left_DollarParen '$('>
                                            child: 
                                              (command.Simple
                                                blame_tok: <curl>
                                                more_env: []
                                                words: [
                                                  {<curl>}
                                                  {<-Ss>}
                                                  {<--fail>}
                                                  {
                                                    (DQ (${ Id.VSub_Name SERVER_BINARY_TAR_URL) 
                                                      <.sha1>
                                                    )
                                                  }
                                                ]
                                                redirects: []
                                                do_fork: T
                                              )
                                            right: <Id.Eof_RParen _>
                                          )
                                        }
                                    )
                                  ]
                                  redirects: []
                                )
                              ]
                              ops: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [{<echo>} {(DQ <'Failure trying to curl release .sha1'>)}]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  spids: [2936 2957]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Pipeline
                              negated: <Id.KW_Bang '!'>
                              children: [
                                (command.ShAssignment
                                  left: <Id.Lit_VarLike 'SALT_TAR_HASH='>
                                  pairs: [
                                    (AssignPair
                                      left: <Id.Lit_VarLike 'SALT_TAR_HASH='>
                                      lhs: 
                                        (sh_lhs_expr.Name
                                          left: <Id.Lit_VarLike 'SALT_TAR_HASH='>
                                          name: SALT_TAR_HASH
                                        )
                                      op: assign_op.Equal
                                      rhs: 
                                        {
                                          (CommandSub
                                            left_token: <Id.Left_DollarParen '$('>
                                            child: 
                                              (command.Simple
                                                blame_tok: <curl>
                                                more_env: []
                                                words: [
                                                  {<curl>}
                                                  {<-Ss>}
                                                  {<--fail>}
                                                  {(DQ (${ Id.VSub_Name SALT_TAR_URL) <.sha1>)}
                                                ]
                                                redirects: []
                                                do_fork: T
                                              )
                                            right: <Id.Eof_RParen _>
                                          )
                                        }
                                    )
                                  ]
                                  redirects: []
                                )
                              ]
                              ops: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [{<echo>} {(DQ <'Failure trying to curl Salt tar .sha1'>)}]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  spids: [2970 2991]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Pipeline
                              negated: <Id.KW_Bang '!'>
                              children: [
                                (command.Simple
                                  blame_tok: <curl>
                                  more_env: []
                                  words: [
                                    {<curl>}
                                    {<-Ss>}
                                    {<--head>}
                                    {(DQ (${ Id.VSub_Name SERVER_BINARY_TAR_URL))}
                                  ]
                                  redirects: [
                                    (Redir
                                      op: <Id.Redir_GreatAnd '>&'>
                                      loc: (redir_loc.Fd fd:1)
                                      arg: {<'/dev/null'>}
                                    )
                                  ]
                                  do_fork: T
                                )
                              ]
                              ops: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [
                        {<echo>}
                        {(DQ <'Can\'t find release at '> (${ Id.VSub_Name SERVER_BINARY_TAR_URL))}
                      ]
                      redirects: [(Redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})]
                      do_fork: T
                    )
                    (command.ControlFlow
                      keyword: <Id.ControlFlow_Exit exit>
                      arg_word: {<1>}
                    )
                  ]
                  spids: [3005 3025]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Pipeline
                              negated: <Id.KW_Bang '!'>
                              children: [
                                (command.Simple
                                  blame_tok: <curl>
                                  more_env: []
                                  words: [
                                    {<curl>}
                                    {<-Ss>}
                                    {<--head>}
                                    {(DQ (${ Id.VSub_Name SALT_TAR_URL))}
                                  ]
                                  redirects: [
                                    (Redir
                                      op: <Id.Redir_GreatAnd '>&'>
                                      loc: (redir_loc.Fd fd:1)
                                      arg: {<'/dev/null'>}
                                    )
                                  ]
                                  do_fork: T
                                )
                              ]
                              ops: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [
                        {<echo>}
                        {(DQ <'Can\'t find Salt tar at '> (${ Id.VSub_Name SALT_TAR_URL))}
                      ]
                      redirects: [(Redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})]
                      do_fork: T
                    )
                    (command.ControlFlow
                      keyword: <Id.ControlFlow_Exit exit>
                      arg_word: {<1>}
                    )
                  ]
                  spids: [3049 3069]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <find-tar>
      name: find-tar
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [{<local>} {<-r>} {<Id.Lit_VarLike 'tarball='> ($ Id.VSub_Number 1)}]
              redirects: []
              do_fork: T
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'locations='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'locations='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'locations='> name:locations)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (ShArrayLiteral
                        left: <Id.Op_LParen _>
                        words: [
                          {(DQ (${ Id.VSub_Name KUBE_ROOT) <'/server/'> (${ Id.VSub_Name tarball))}
                          {
                            (DQ (${ Id.VSub_Name KUBE_ROOT) <'/_output/release-tars/'> 
                              (${ Id.VSub_Name tarball)
                            )
                          }
                          {
                            (DQ (${ Id.VSub_Name KUBE_ROOT) <'/bazel-bin/build/release-tars/'> 
                              (${ Id.VSub_Name tarball)
                            )
                          }
                        ]
                        right: <Id.Right_ShArrayLiteral _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'location='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'location='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'location='> name:location)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Subshell
                                left: <Id.Op_LParen _>
                                child: 
                                  (command.AndOr
                                    children: [
                                      (command.Simple
                                        blame_tok: <ls>
                                        more_env: []
                                        words: [
                                          {<ls>}
                                          {<-t>}
                                          {
                                            (DQ 
                                              (BracedVarSub
                                                left: <Id.Left_DollarBrace '${'>
                                                token: <Id.VSub_Name locations>
                                                var_name: locations
                                                bracket_op: (bracket_op.WholeArray op_id:Id.Lit_At)
                                                right: <Id.Right_DollarBrace '}'>
                                              )
                                            )
                                          }
                                        ]
                                        redirects: [
                                          (Redir
                                            op: <Id.Redir_Great '2>'>
                                            loc: (redir_loc.Fd fd:2)
                                            arg: {<'/dev/null'>}
                                          )
                                        ]
                                        do_fork: T
                                      )
                                      (command.Simple
                                        blame_tok: <true>
                                        more_env: []
                                        words: [{<true>}]
                                        redirects: []
                                        do_fork: T
                                      )
                                    ]
                                    ops: [<Id.Op_DPipe _>]
                                  )
                                right: <Id.Right_Subshell _>
                                redirects: []
                              )
                              (command.Simple
                                blame_tok: <head>
                                more_env: []
                                words: [{<head>} {<-1>}]
                                redirects: []
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _>]
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.LogicalNot
                                  child: 
                                    (bool_expr.Unary
                                      op_id: Id.BoolUnary_f
                                      child: {(DQ (${ Id.VSub_Name location))}
                                    )
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [{<echo>} {(DQ <'!!! Cannot find '> (${ Id.VSub_Name tarball))}]
                      redirects: [(Redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})]
                      do_fork: T
                    )
                    (command.ControlFlow
                      keyword: <Id.ControlFlow_Exit exit>
                      arg_word: {<1>}
                    )
                  ]
                  spids: [3211 3228]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Simple
              blame_tok: <echo>
              more_env: []
              words: [{<echo>} {(DQ (${ Id.VSub_Name location))}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <find-release-tars>
      name: find-release-tars
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.ShAssignment
              left: <Id.Lit_VarLike 'SERVER_BINARY_TAR='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'SERVER_BINARY_TAR='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'SERVER_BINARY_TAR='>
                      name: SERVER_BINARY_TAR
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <find-tar>
                            more_env: []
                            words: [{<find-tar>} {<kubernetes-server-linux-amd64.tar.gz>}]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'SALT_TAR='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'SALT_TAR='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'SALT_TAR='> name:SALT_TAR)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <find-tar>
                            more_env: []
                            words: [{<find-tar>} {<kubernetes-salt.tar.gz>}]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBE_MANIFESTS_TAR='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBE_MANIFESTS_TAR='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'KUBE_MANIFESTS_TAR='>
                      name: KUBE_MANIFESTS_TAR
                    )
                  op: assign_op.Equal
                  rhs: (rhs_word__Empty)
                )
              ]
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.AndOr
                              children: [
                                (command.DBracket
                                  left: <Id.KW_DLeftBracket '[['>
                                  expr: 
                                    (bool_expr.LogicalOr
                                      left: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobDEqual
                                          left: 
                                            {
                                              (DQ 
                                                (BracedVarSub
                                                  left: <Id.Left_DollarBrace '${'>
                                                  token: <Id.VSub_Name MASTER_OS_DISTRIBUTION>
                                                  var_name: MASTER_OS_DISTRIBUTION
                                                  suffix_op: 
                                                    (suffix_op.Unary
                                                      op: <Id.VTest_ColonHyphen _>
                                                      arg_word: (rhs_word__Empty)
                                                    )
                                                  right: <Id.Right_DollarBrace '}'>
                                                )
                                              )
                                            }
                                          right: {(DQ <trusty>)}
                                        )
                                      right: 
                                        (bool_expr.LogicalOr
                                          left: 
                                            (bool_expr.Binary
                                              op_id: Id.BoolBinary_GlobDEqual
                                              left: 
                                                {
                                                  (DQ 
                                                    (BracedVarSub
                                                      left: <Id.Left_DollarBrace '${'>
                                                      token: <Id.VSub_Name MASTER_OS_DISTRIBUTION>
                                                      var_name: MASTER_OS_DISTRIBUTION
                                                      suffix_op: 
                                                        (suffix_op.Unary
                                                          op: <Id.VTest_ColonHyphen _>
                                                          arg_word: (rhs_word__Empty)
                                                        )
                                                      right: <Id.Right_DollarBrace '}'>
                                                    )
                                                  )
                                                }
                                              right: {(DQ <gci>)}
                                            )
                                          right: 
                                            (bool_expr.LogicalOr
                                              left: 
                                                (bool_expr.Binary
                                                  op_id: Id.BoolBinary_GlobDEqual
                                                  left: 
                                                    {
                                                      (DQ 
                                                        (BracedVarSub
                                                          left: <Id.Left_DollarBrace '${'>
                                                          token: 
                                                            <Id.VSub_Name MASTER_OS_DISTRIBUTION>
                                                          var_name: MASTER_OS_DISTRIBUTION
                                                          suffix_op: 
                                                            (suffix_op.Unary
                                                              op: <Id.VTest_ColonHyphen _>
                                                              arg_word: (rhs_word__Empty)
                                                            )
                                                          right: <Id.Right_DollarBrace '}'>
                                                        )
                                                      )
                                                    }
                                                  right: {(DQ <container-linux>)}
                                                )
                                              right: 
                                                (bool_expr.Binary
                                                  op_id: Id.BoolBinary_GlobDEqual
                                                  left: 
                                                    {
                                                      (DQ 
                                                        (BracedVarSub
                                                          left: <Id.Left_DollarBrace '${'>
                                                          token: 
                                                            <Id.VSub_Name MASTER_OS_DISTRIBUTION>
                                                          var_name: MASTER_OS_DISTRIBUTION
                                                          suffix_op: 
                                                            (suffix_op.Unary
                                                              op: <Id.VTest_ColonHyphen _>
                                                              arg_word: (rhs_word__Empty)
                                                            )
                                                          right: <Id.Right_DollarBrace '}'>
                                                        )
                                                      )
                                                    }
                                                  right: {(DQ <ubuntu>)}
                                                )
                                            )
                                        )
                                    )
                                  right: <Id.Lit_DRightBracket ']]'>
                                  redirects: []
                                )
                                (command.DBracket
                                  left: <Id.KW_DLeftBracket '[['>
                                  expr: 
                                    (bool_expr.LogicalOr
                                      left: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobDEqual
                                          left: 
                                            {
                                              (DQ 
                                                (BracedVarSub
                                                  left: <Id.Left_DollarBrace '${'>
                                                  token: <Id.VSub_Name NODE_OS_DISTRIBUTION>
                                                  var_name: NODE_OS_DISTRIBUTION
                                                  suffix_op: 
                                                    (suffix_op.Unary
                                                      op: <Id.VTest_ColonHyphen _>
                                                      arg_word: (rhs_word__Empty)
                                                    )
                                                  right: <Id.Right_DollarBrace '}'>
                                                )
                                              )
                                            }
                                          right: {(DQ <trusty>)}
                                        )
                                      right: 
                                        (bool_expr.LogicalOr
                                          left: 
                                            (bool_expr.Binary
                                              op_id: Id.BoolBinary_GlobDEqual
                                              left: 
                                                {
                                                  (DQ 
                                                    (BracedVarSub
                                                      left: <Id.Left_DollarBrace '${'>
                                                      token: <Id.VSub_Name NODE_OS_DISTRIBUTION>
                                                      var_name: NODE_OS_DISTRIBUTION
                                                      suffix_op: 
                                                        (suffix_op.Unary
                                                          op: <Id.VTest_ColonHyphen _>
                                                          arg_word: (rhs_word__Empty)
                                                        )
                                                      right: <Id.Right_DollarBrace '}'>
                                                    )
                                                  )
                                                }
                                              right: {(DQ <gci>)}
                                            )
                                          right: 
                                            (bool_expr.LogicalOr
                                              left: 
                                                (bool_expr.Binary
                                                  op_id: Id.BoolBinary_GlobDEqual
                                                  left: 
                                                    {
                                                      (DQ 
                                                        (BracedVarSub
                                                          left: <Id.Left_DollarBrace '${'>
                                                          token: <Id.VSub_Name NODE_OS_DISTRIBUTION>
                                                          var_name: NODE_OS_DISTRIBUTION
                                                          suffix_op: 
                                                            (suffix_op.Unary
                                                              op: <Id.VTest_ColonHyphen _>
                                                              arg_word: (rhs_word__Empty)
                                                            )
                                                          right: <Id.Right_DollarBrace '}'>
                                                        )
                                                      )
                                                    }
                                                  right: {(DQ <container-linux>)}
                                                )
                                              right: 
                                                (bool_expr.Binary
                                                  op_id: Id.BoolBinary_GlobDEqual
                                                  left: 
                                                    {
                                                      (DQ 
                                                        (BracedVarSub
                                                          left: <Id.Left_DollarBrace '${'>
                                                          token: <Id.VSub_Name NODE_OS_DISTRIBUTION>
                                                          var_name: NODE_OS_DISTRIBUTION
                                                          suffix_op: 
                                                            (suffix_op.Unary
                                                              op: <Id.VTest_ColonHyphen _>
                                                              arg_word: (rhs_word__Empty)
                                                            )
                                                          right: <Id.Right_DollarBrace '}'>
                                                        )
                                                      )
                                                    }
                                                  right: {(DQ <ubuntu>)}
                                                )
                                            )
                                        )
                                    )
                                  right: <Id.Lit_DRightBracket ']]'>
                                  redirects: []
                                )
                              ]
                              ops: [<Id.Op_DPipe _>]
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'KUBE_MANIFESTS_TAR='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'KUBE_MANIFESTS_TAR='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'KUBE_MANIFESTS_TAR='>
                              name: KUBE_MANIFESTS_TAR
                            )
                          op: assign_op.Equal
                          rhs: 
                            {
                              (CommandSub
                                left_token: <Id.Left_DollarParen '$('>
                                child: 
                                  (command.Simple
                                    blame_tok: <find-tar>
                                    more_env: []
                                    words: [{<find-tar>} {<kubernetes-manifests.tar.gz>}]
                                    redirects: []
                                    do_fork: T
                                  )
                                right: <Id.Eof_RParen _>
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [3320 3452]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <find-release-version>
      name: find-release-version
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBE_GIT_VERSION='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBE_GIT_VERSION='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'KUBE_GIT_VERSION='>
                      name: KUBE_GIT_VERSION
                    )
                  op: assign_op.Equal
                  rhs: {(DQ )}
                )
              ]
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Unary
                                  op_id: Id.BoolUnary_f
                                  child: {(DQ (${ Id.VSub_Name KUBE_ROOT) <'/version'>)}
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'KUBE_GIT_VERSION='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'KUBE_GIT_VERSION='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'KUBE_GIT_VERSION='>
                              name: KUBE_GIT_VERSION
                            )
                          op: assign_op.Equal
                          rhs: 
                            {
                              (DQ 
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <cat>
                                      more_env: []
                                      words: [{<cat>} {(${ Id.VSub_Name KUBE_ROOT) <'/version'>}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [3500 3516]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Unary
                                  op_id: Id.BoolUnary_f
                                  child: 
                                    {
                                      (DQ (${ Id.VSub_Name KUBE_ROOT) 
                                        <'/_output/release-stage/full/kubernetes/version'>
                                      )
                                    }
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'KUBE_GIT_VERSION='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'KUBE_GIT_VERSION='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'KUBE_GIT_VERSION='>
                              name: KUBE_GIT_VERSION
                            )
                          op: assign_op.Equal
                          rhs: 
                            {
                              (DQ 
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <cat>
                                      more_env: []
                                      words: [
                                        {<cat>}
                                        {(${ Id.VSub_Name KUBE_ROOT) 
                                          <'/_output/release-stage/full/kubernetes/version'>
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [3535 3551]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Unary
                                  op_id: Id.BoolUnary_z
                                  child: {(DQ (${ Id.VSub_Name KUBE_GIT_VERSION))}
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [{<echo>} {(DQ <'!!! Cannot find release version'>)}]
                      redirects: []
                      do_fork: T
                    )
                    (command.ControlFlow
                      keyword: <Id.ControlFlow_Exit exit>
                      arg_word: {<1>}
                    )
                  ]
                  spids: [3571 3586]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <stage-images>
      name: stage-images
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <find-release-version>
              more_env: []
              words: [{<find-release-version>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <find-release-tars>
              more_env: []
              words: [{<find-release-tars>}]
              redirects: []
              do_fork: T
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBE_IMAGE_TAG='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBE_IMAGE_TAG='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'KUBE_IMAGE_TAG='> name:KUBE_IMAGE_TAG)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (DQ 
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Pipeline
                              children: [
                                (command.Simple
                                  blame_tok: <echo>
                                  more_env: []
                                  words: [{<echo>} {(DQ ) (DQ (${ Id.VSub_Name KUBE_GIT_VERSION)) (DQ )}]
                                  redirects: []
                                  do_fork: T
                                )
                                (command.Simple
                                  blame_tok: <sed>
                                  more_env: []
                                  words: [{<sed>} {(SQ <'s/+/-/g'>)}]
                                  redirects: []
                                  do_fork: T
                                )
                              ]
                              ops: [<Id.Op_Pipe _>]
                            )
                          right: <Id.Eof_RParen _>
                        )
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'docker_wrapped_binaries='> 
                  (ShArrayLiteral
                    left: <Id.Op_LParen _>
                    words: [
                      {(DQ <kube-apiserver>)}
                      {(DQ <kube-controller-manager>)}
                      {(DQ <kube-scheduler>)}
                      {(DQ <kube-proxy>)}
                    ]
                    right: <Id.Right_ShArrayLiteral _>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'docker_cmd='> 
                  (ShArrayLiteral
                    left: <Id.Op_LParen _>
                    words: [{(DQ <docker>)}]
                    right: <Id.Right_ShArrayLiteral _>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Binary
                                  op_id: Id.BoolBinary_GlobDEqual
                                  left: {(DQ (${ Id.VSub_Name KUBE_DOCKER_REGISTRY))}
                                  right: {(DQ <'gcr.io/'>) <Id.Lit_Other '*'>}
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <local>
                      more_env: []
                      words: [
                        {<local>}
                        {<Id.Lit_VarLike 'docker_push_cmd='> 
                          (ShArrayLiteral
                            left: <Id.Op_LParen _>
                            words: [{(DQ <gcloud>)} {(DQ <docker>)}]
                            right: <Id.Right_ShArrayLiteral _>
                          )
                        }
                      ]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  spids: [3690 3710]
                )
              ]
              else_kw: <Id.KW_Else else>
              else_action: [
                (command.Simple
                  blame_tok: <local>
                  more_env: []
                  words: [
                    {<local>}
                    {<Id.Lit_VarLike 'docker_push_cmd='> 
                      (ShArrayLiteral
                        left: <Id.Op_LParen _>
                        words: [
                          {
                            (DQ 
                              (BracedVarSub
                                left: <Id.Left_DollarBrace '${'>
                                token: <Id.VSub_Name docker_cmd>
                                var_name: docker_cmd
                                bracket_op: (bracket_op.WholeArray op_id:Id.Lit_At)
                                right: <Id.Right_DollarBrace '}'>
                              )
                            )
                          }
                        ]
                        right: <Id.Right_ShArrayLiteral _>
                      )
                    }
                  ]
                  redirects: []
                  do_fork: T
                )
              ]
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'temp_dir='> 
                  (DQ 
                    (CommandSub
                      left_token: <Id.Left_DollarParen '$('>
                      child: 
                        (command.Simple
                          blame_tok: <mktemp>
                          more_env: []
                          words: [{<mktemp>} {<-d>} {<-t>} {(SQ <kube-server-XXXX>)}]
                          redirects: []
                          do_fork: T
                        )
                      right: <Id.Eof_RParen _>
                    )
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <tar>
              more_env: []
              words: [
                {<tar>}
                {<xzfv>}
                {(DQ (${ Id.VSub_Name SERVER_BINARY_TAR))}
                {<-C>}
                {(DQ (${ Id.VSub_Name temp_dir))}
              ]
              redirects: [
                (Redir
                  op: <Id.Redir_AndGreat '&>'>
                  loc: (redir_loc.Fd fd:1)
                  arg: {<'/dev/null'>}
                )
              ]
              do_fork: T
            )
            (command.ForEach
              keyword: <Id.KW_For for>
              iter_names: [binary]
              iterable: 
                (for_iter.Words
                  words: [
                    {
                      (DQ 
                        (BracedVarSub
                          left: <Id.Left_DollarBrace '${'>
                          token: <Id.VSub_Name docker_wrapped_binaries>
                          var_name: docker_wrapped_binaries
                          bracket_op: (bracket_op.WholeArray op_id:Id.Lit_At)
                          right: <Id.Right_DollarBrace '}'>
                        )
                      )
                    }
                  ]
                )
              semi_tok: <Id.Op_Semi _>
              body: 
                (command.DoGroup
                  left: <Id.KW_Do do>
                  children: [
                    (command.Simple
                      blame_tok: <local>
                      more_env: []
                      words: [
                        {<local>}
                        {<Id.Lit_VarLike 'docker_tag='> 
                          (DQ 
                            (CommandSub
                              left_token: <Id.Left_DollarParen '$('>
                              child: 
                                (command.Simple
                                  blame_tok: <cat>
                                  more_env: []
                                  words: [
                                    {<cat>}
                                    {(${ Id.VSub_Name temp_dir) <'/kubernetes/server/bin/'> 
                                      (${ Id.VSub_Name binary) <.docker_tag>
                                    }
                                  ]
                                  redirects: []
                                  do_fork: T
                                )
                              right: <Id.Eof_RParen _>
                            )
                          )
                        }
                      ]
                      redirects: []
                      do_fork: T
                    )
                    (command.Sentence
                      child: 
                        (command.Subshell
                          left: <Id.Op_LParen _>
                          child: 
                            (command.CommandList
                              children: [
                                (command.Simple
                                  blame_tok: <Id.Left_DoubleQuote '"'>
                                  more_env: []
                                  words: [
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          left: <Id.Left_DollarBrace '${'>
                                          token: <Id.VSub_Name docker_cmd>
                                          var_name: docker_cmd
                                          bracket_op: (bracket_op.WholeArray op_id:Id.Lit_At)
                                          right: <Id.Right_DollarBrace '}'>
                                        )
                                      )
                                    }
                                    {<load>}
                                    {<-i>}
                                    {
                                      (DQ (${ Id.VSub_Name temp_dir) <'/kubernetes/server/bin/'> 
                                        (${ Id.VSub_Name binary) <.tar>
                                      )
                                    }
                                  ]
                                  redirects: []
                                  do_fork: T
                                )
                                (command.AndOr
                                  children: [
                                    (command.Simple
                                      blame_tok: <Id.Left_DoubleQuote '"'>
                                      more_env: []
                                      words: [
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name docker_cmd>
                                              var_name: docker_cmd
                                              bracket_op: (bracket_op.WholeArray op_id:Id.Lit_At)
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                        {<rmi>}
                                        {
                                          (DQ (${ Id.VSub_Name KUBE_DOCKER_REGISTRY) <'/'> 
                                            (${ Id.VSub_Name binary) <':'> (${ Id.VSub_Name KUBE_IMAGE_TAG)
                                          )
                                        }
                                      ]
                                      redirects: [
                                        (Redir
                                          op: <Id.Redir_Great '2>'>
                                          loc: (redir_loc.Fd fd:2)
                                          arg: {<'/dev/null'>}
                                        )
                                      ]
                                      do_fork: T
                                    )
                                    (command.Simple
                                      blame_tok: <true>
                                      more_env: []
                                      words: [{<true>}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  ]
                                  ops: [<Id.Op_DPipe _>]
                                )
                                (command.Simple
                                  blame_tok: <Id.Left_DoubleQuote '"'>
                                  more_env: []
                                  words: [
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          left: <Id.Left_DollarBrace '${'>
                                          token: <Id.VSub_Name docker_cmd>
                                          var_name: docker_cmd
                                          bracket_op: (bracket_op.WholeArray op_id:Id.Lit_At)
                                          right: <Id.Right_DollarBrace '}'>
                                        )
                                      )
                                    }
                                    {<tag>}
                                    {
                                      (DQ <'gcr.io/google_containers/'> (${ Id.VSub_Name binary) <':'> 
                                        (${ Id.VSub_Name docker_tag)
                                      )
                                    }
                                    {
                                      (DQ (${ Id.VSub_Name KUBE_DOCKER_REGISTRY) <'/'> 
                                        (${ Id.VSub_Name binary) <':'> (${ Id.VSub_Name KUBE_IMAGE_TAG)
                                      )
                                    }
                                  ]
                                  redirects: []
                                  do_fork: T
                                )
                                (command.Simple
                                  blame_tok: <Id.Left_DoubleQuote '"'>
                                  more_env: []
                                  words: [
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          left: <Id.Left_DollarBrace '${'>
                                          token: <Id.VSub_Name docker_push_cmd>
                                          var_name: docker_push_cmd
                                          bracket_op: (bracket_op.WholeArray op_id:Id.Lit_At)
                                          right: <Id.Right_DollarBrace '}'>
                                        )
                                      )
                                    }
                                    {<push>}
                                    {
                                      (DQ (${ Id.VSub_Name KUBE_DOCKER_REGISTRY) <'/'> 
                                        (${ Id.VSub_Name binary) <':'> (${ Id.VSub_Name KUBE_IMAGE_TAG)
                                      )
                                    }
                                  ]
                                  redirects: []
                                  do_fork: T
                                )
                              ]
                            )
                          right: <Id.Right_Subshell _>
                          redirects: [
                            (Redir
                              op: <Id.Redir_AndGreat '&>'>
                              loc: (redir_loc.Fd fd:1)
                              arg: 
                                {
                                  (DQ (${ Id.VSub_Name temp_dir) <'/'> (${ Id.VSub_Name binary) 
                                    <-push.log>
                                  )
                                }
                            )
                          ]
                        )
                      terminator: <Id.Op_Amp _>
                    )
                  ]
                  right: <Id.KW_Done done>
                )
              redirects: []
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <kube>
                  more_env: []
                  words: [
                    {<kube> <Id.Lit_Colon ':'> <Id.Lit_Colon ':'> <util> <Id.Lit_Colon ':'> 
                      <Id.Lit_Colon ':'> <wait-for-jobs>
                    }
                  ]
                  redirects: []
                  do_fork: T
                )
                (BraceGroup
                  left: <Id.Lit_LBrace '{'>
                  children: [
                    (command.Simple
                      blame_tok: <kube>
                      more_env: []
                      words: [
                        {<kube> <Id.Lit_Colon ':'> <Id.Lit_Colon ':'> <log> <Id.Lit_Colon ':'> 
                          <Id.Lit_Colon ':'> <error>
                        }
                        {
                          (DQ <'unable to push images. See '> (${ Id.VSub_Name temp_dir) 
                            <'/*.log for more info.'>
                          )
                        }
                      ]
                      redirects: []
                      do_fork: T
                    )
                    (command.ControlFlow
                      keyword: <Id.ControlFlow_Return return>
                      arg_word: {<1>}
                    )
                  ]
                  redirects: []
                  right: <Id.Lit_RBrace '}'>
                )
              ]
              ops: [<Id.Op_DPipe _>]
            )
            (command.Simple
              blame_tok: <rm>
              more_env: []
              words: [{<rm>} {<-rf>} {(DQ (${ Id.VSub_Name temp_dir))}]
              redirects: []
              do_fork: T
            )
            (command.ControlFlow keyword:<Id.ControlFlow_Return return> arg_word:{<0>})
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <yaml-quote>
      name: yaml-quote
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <echo>
              more_env: []
              words: [
                {<echo>}
                {
                  (DQ <'\''> 
                    (CommandSub
                      left_token: <Id.Left_DollarParen '$('>
                      child: 
                        (command.Pipeline
                          children: [
                            (command.Simple
                              blame_tok: <echo>
                              more_env: []
                              words: [
                                {<echo>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_At '@'>
                                      var_name: '@'
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                            (command.Simple
                              blame_tok: <sed>
                              more_env: []
                              words: [{<sed>} {<-e>} {(DQ <'s/\'/\'\'/g'>)}]
                              redirects: []
                              do_fork: T
                            )
                          ]
                          ops: [<Id.Op_Pipe _>]
                        )
                      right: <Id.Eof_RParen _>
                    ) <'\''>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <build-runtime-config>
      name: build-runtime-config
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <Id.Lit_Colon ':'>
              more_env: []
              words: [{<Id.Lit_Colon ':'>}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <write-cluster-name>
      name: write-cluster-name
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <cat>
              more_env: []
              words: [{<cat>}]
              redirects: [
                (Redir
                  op: <Id.Redir_Great '>'>
                  loc: (redir_loc.Fd fd:1)
                  arg: {(DQ (${ Id.VSub_Name KUBE_TEMP) <'/cluster-name.txt'>)}
                )
                (Redir
                  op: <Id.Redir_DLess '<<'>
                  loc: (redir_loc.Fd fd:0)
                  arg: 
                    (redir_param.HereDoc
                      here_begin: {<EOF>}
                      here_end_tok: <Id.Undefined_Tok ''>
                      stdin_parts: [(${ Id.VSub_Name CLUSTER_NAME) <'\n'>]
                    )
                )
              ]
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <write-master-env>
      name: write-master-env
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.LogicalAnd
                                  left: 
                                    (bool_expr.Binary
                                      op_id: Id.BoolBinary_GlobDEqual
                                      left: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name REGISTER_MASTER_KUBELET>
                                              var_name: REGISTER_MASTER_KUBELET
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                      right: {(DQ <true>)}
                                    )
                                  right: 
                                    (bool_expr.Unary
                                      op_id: Id.BoolUnary_z
                                      child: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name KUBELET_APISERVER>
                                              var_name: KUBELET_APISERVER
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                    )
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'KUBELET_APISERVER='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'KUBELET_APISERVER='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'KUBELET_APISERVER='>
                              name: KUBELET_APISERVER
                            )
                          op: assign_op.Equal
                          rhs: {(DQ (${ Id.VSub_Name MASTER_NAME))}
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [4163 4194]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Unary
                                  op_id: Id.BoolUnary_z
                                  child: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          left: <Id.Left_DollarBrace '${'>
                                          token: <Id.VSub_Name KUBERNETES_MASTER_NAME>
                                          var_name: KUBERNETES_MASTER_NAME
                                          suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                          right: <Id.Right_DollarBrace '}'>
                                        )
                                      )
                                    }
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'KUBERNETES_MASTER_NAME='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'KUBERNETES_MASTER_NAME='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'KUBERNETES_MASTER_NAME='>
                              name: KUBERNETES_MASTER_NAME
                            )
                          op: assign_op.Equal
                          rhs: {(DQ (${ Id.VSub_Name MASTER_NAME))}
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [4208 4224]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Simple
              blame_tok: <build-kube-env>
              more_env: []
              words: [
                {<build-kube-env>}
                {<true>}
                {(DQ (${ Id.VSub_Name KUBE_TEMP) <'/master-kube-env.yaml'>)}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <build-kube-master-certs>
              more_env: []
              words: [
                {<build-kube-master-certs>}
                {(DQ (${ Id.VSub_Name KUBE_TEMP) <'/kube-master-certs.yaml'>)}
              ]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <write-node-env>
      name: write-node-env
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Unary
                                  op_id: Id.BoolUnary_z
                                  child: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          left: <Id.Left_DollarBrace '${'>
                                          token: <Id.VSub_Name KUBERNETES_MASTER_NAME>
                                          var_name: KUBERNETES_MASTER_NAME
                                          suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                          right: <Id.Right_DollarBrace '}'>
                                        )
                                      )
                                    }
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'KUBERNETES_MASTER_NAME='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'KUBERNETES_MASTER_NAME='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'KUBERNETES_MASTER_NAME='>
                              name: KUBERNETES_MASTER_NAME
                            )
                          op: assign_op.Equal
                          rhs: {(DQ (${ Id.VSub_Name MASTER_NAME))}
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [4270 4286]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Simple
              blame_tok: <build-kube-env>
              more_env: []
              words: [
                {<build-kube-env>}
                {<false>}
                {(DQ (${ Id.VSub_Name KUBE_TEMP) <'/node-kube-env.yaml'>)}
              ]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <build-kube-master-certs>
      name: build-kube-master-certs
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [{<local>} {<Id.Lit_VarLike 'file='> ($ Id.VSub_Number 1)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rm>
              more_env: []
              words: [{<rm>} {<-f>} {(${ Id.VSub_Name file)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <cat>
              more_env: []
              words: [{<cat>}]
              redirects: [
                (Redir
                  op: <Id.Redir_Great '>'>
                  loc: (redir_loc.Fd fd:1)
                  arg: {($ Id.VSub_DollarName file)}
                )
                (Redir
                  op: <Id.Redir_DLess '<<'>
                  loc: (redir_loc.Fd fd:0)
                  arg: 
                    (redir_param.HereDoc
                      here_begin: {<EOF>}
                      here_end_tok: <Id.Undefined_Tok ''>
                      stdin_parts: [
                        <'KUBEAPISERVER_CERT: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name KUBEAPISERVER_CERT_BASE64>
                                    var_name: KUBEAPISERVER_CERT_BASE64
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'KUBEAPISERVER_KEY: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name KUBEAPISERVER_KEY_BASE64>
                                    var_name: KUBEAPISERVER_KEY_BASE64
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'CA_KEY: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name CA_KEY_BASE64>
                                    var_name: CA_KEY_BASE64
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'AGGREGATOR_CA_KEY: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name AGGREGATOR_CA_KEY_BASE64>
                                    var_name: AGGREGATOR_CA_KEY_BASE64
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'REQUESTHEADER_CA_CERT: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name REQUESTHEADER_CA_CERT_BASE64>
                                    var_name: REQUESTHEADER_CA_CERT_BASE64
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'PROXY_CLIENT_CERT: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name PROXY_CLIENT_CERT_BASE64>
                                    var_name: PROXY_CLIENT_CERT_BASE64
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'PROXY_CLIENT_KEY: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name PROXY_CLIENT_KEY_BASE64>
                                    var_name: PROXY_CLIENT_KEY_BASE64
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                      ]
                    )
                )
              ]
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <build-kube-env>
      name: build-kube-env
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [{<local>} {<Id.Lit_VarLike 'master='> ($ Id.VSub_Number 1)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [{<local>} {<Id.Lit_VarLike 'file='> ($ Id.VSub_Number 2)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'server_binary_tar_url='> 
                  ($ Id.VSub_DollarName SERVER_BINARY_TAR_URL)
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [{<local>} {<Id.Lit_VarLike 'salt_tar_url='> ($ Id.VSub_DollarName SALT_TAR_URL)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'kube_manifests_tar_url='> 
                  (DQ 
                    (BracedVarSub
                      left: <Id.Left_DollarBrace '${'>
                      token: <Id.VSub_Name KUBE_MANIFESTS_TAR_URL>
                      var_name: KUBE_MANIFESTS_TAR_URL
                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                      right: <Id.Right_DollarBrace '}'>
                    )
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.AndOr
                              children: [
                                (command.DBracket
                                  left: <Id.KW_DLeftBracket '[['>
                                  expr: 
                                    (bool_expr.LogicalAnd
                                      left: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobDEqual
                                          left: {(DQ (${ Id.VSub_Name master))}
                                          right: {(DQ <true>)}
                                        )
                                      right: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobDEqual
                                          left: {(DQ (${ Id.VSub_Name MASTER_OS_DISTRIBUTION))}
                                          right: {(DQ <container-linux>)}
                                        )
                                    )
                                  right: <Id.Lit_DRightBracket ']]'>
                                  redirects: []
                                )
                                (command.DBracket
                                  left: <Id.KW_DLeftBracket '[['>
                                  expr: 
                                    (bool_expr.LogicalAnd
                                      left: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobDEqual
                                          left: {(DQ (${ Id.VSub_Name master))}
                                          right: {(DQ <false>)}
                                        )
                                      right: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobDEqual
                                          left: {(DQ (${ Id.VSub_Name NODE_OS_DISTRIBUTION))}
                                          right: {(DQ <container-linux>)}
                                        )
                                    )
                                  right: <Id.Lit_DRightBracket ']]'>
                                  redirects: []
                                )
                                (command.DBracket
                                  left: <Id.KW_DLeftBracket '[['>
                                  expr: 
                                    (bool_expr.LogicalAnd
                                      left: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobDEqual
                                          left: {(DQ (${ Id.VSub_Name master))}
                                          right: {(DQ <true>)}
                                        )
                                      right: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobDEqual
                                          left: {(DQ (${ Id.VSub_Name MASTER_OS_DISTRIBUTION))}
                                          right: {(DQ <ubuntu>)}
                                        )
                                    )
                                  right: <Id.Lit_DRightBracket ']]'>
                                  redirects: []
                                )
                                (command.DBracket
                                  left: <Id.KW_DLeftBracket '[['>
                                  expr: 
                                    (bool_expr.LogicalAnd
                                      left: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobDEqual
                                          left: {(DQ (${ Id.VSub_Name master))}
                                          right: {(DQ <false>)}
                                        )
                                      right: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobDEqual
                                          left: {(DQ (${ Id.VSub_Name NODE_OS_DISTRIBUTION))}
                                          right: {(DQ <ubuntu>)}
                                        )
                                    )
                                  right: <Id.Lit_DRightBracket ']]'>
                                  redirects: []
                                )
                              ]
                              ops: [<Id.Op_DPipe _> <Id.Op_DPipe _> <Id.Op_DPipe _>]
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'server_binary_tar_url='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'server_binary_tar_url='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'server_binary_tar_url='>
                              name: server_binary_tar_url
                            )
                          op: assign_op.Equal
                          rhs: 
                            {
                              (CommandSub
                                left_token: <Id.Left_DollarParen '$('>
                                child: 
                                  (command.Simple
                                    blame_tok: <split_csv>
                                    more_env: []
                                    words: [{<split_csv>} {(DQ (${ Id.VSub_Name SERVER_BINARY_TAR_URL))}]
                                    redirects: []
                                    do_fork: T
                                  )
                                right: <Id.Eof_RParen _>
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'salt_tar_url='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'salt_tar_url='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'salt_tar_url='>
                              name: salt_tar_url
                            )
                          op: assign_op.Equal
                          rhs: 
                            {
                              (CommandSub
                                left_token: <Id.Left_DollarParen '$('>
                                child: 
                                  (command.Simple
                                    blame_tok: <split_csv>
                                    more_env: []
                                    words: [{<split_csv>} {(DQ (${ Id.VSub_Name SALT_TAR_URL))}]
                                    redirects: []
                                    do_fork: T
                                  )
                                right: <Id.Eof_RParen _>
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'kube_manifests_tar_url='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'kube_manifests_tar_url='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'kube_manifests_tar_url='>
                              name: kube_manifests_tar_url
                            )
                          op: assign_op.Equal
                          rhs: 
                            {
                              (CommandSub
                                left_token: <Id.Left_DollarParen '$('>
                                child: 
                                  (command.Simple
                                    blame_tok: <split_csv>
                                    more_env: []
                                    words: [
                                      {<split_csv>}
                                      {(DQ (${ Id.VSub_Name KUBE_MANIFESTS_TAR_URL))}
                                    ]
                                    redirects: []
                                    do_fork: T
                                  )
                                right: <Id.Eof_RParen _>
                              )
                            }
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [4466 4602]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Simple
              blame_tok: <build-runtime-config>
              more_env: []
              words: [{<build-runtime-config>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <gen-uid>
              more_env: []
              words: [{<gen-uid>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rm>
              more_env: []
              words: [{<rm>} {<-f>} {(${ Id.VSub_Name file)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <cat>
              more_env: []
              words: [{<cat>}]
              redirects: [
                (Redir
                  op: <Id.Redir_Great '>'>
                  loc: (redir_loc.Fd fd:1)
                  arg: {($ Id.VSub_DollarName file)}
                )
                (Redir
                  op: <Id.Redir_DLess '<<'>
                  loc: (redir_loc.Fd fd:0)
                  arg: 
                    (redir_param.HereDoc
                      here_begin: {<EOF>}
                      here_end_tok: <Id.Undefined_Tok ''>
                      stdin_parts: [
                        <'CLUSTER_NAME: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [{<yaml-quote>} {(${ Id.VSub_Name CLUSTER_NAME)}]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ENV_TIMESTAMP: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (CommandSub
                                    left_token: <Id.Left_DollarParen '$('>
                                    child: 
                                      (command.Simple
                                        blame_tok: <date>
                                        more_env: []
                                        words: [
                                          {<date>}
                                          {<-u>}
                                          {<Id.Lit_Other '+'> <Id.Lit_Other '%'> <Y-> 
                                            <Id.Lit_Other '%'> <m-> <Id.Lit_Other '%'> <dT> <Id.Lit_Other '%'> <T> <Id.Lit_Other '%'> <z>
                                          }
                                        ]
                                        redirects: []
                                        do_fork: T
                                      )
                                    right: <Id.Eof_RParen _>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'INSTANCE_PREFIX: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [{<yaml-quote>} {(${ Id.VSub_Name INSTANCE_PREFIX)}]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'NODE_INSTANCE_PREFIX: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [{<yaml-quote>} {(${ Id.VSub_Name NODE_INSTANCE_PREFIX)}]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'NODE_TAGS: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name NODE_TAGS>
                                    var_name: NODE_TAGS
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'NODE_NETWORK: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name NETWORK>
                                    var_name: NETWORK
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'NODE_SUBNETWORK: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name SUBNETWORK>
                                    var_name: SUBNETWORK
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'CLUSTER_IP_RANGE: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name CLUSTER_IP_RANGE>
                                    var_name: CLUSTER_IP_RANGE
                                    suffix_op: 
                                      (suffix_op.Unary
                                        op: <Id.VTest_ColonHyphen _>
                                        arg_word: {<10.244.0.0> <Id.Lit_Slash '/'> <16>}
                                      )
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'SERVER_BINARY_TAR_URL: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [{<yaml-quote>} {(${ Id.VSub_Name server_binary_tar_url)}]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'SERVER_BINARY_TAR_HASH: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [{<yaml-quote>} {(${ Id.VSub_Name SERVER_BINARY_TAR_HASH)}]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'PROJECT_ID: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [{<yaml-quote>} {(${ Id.VSub_Name PROJECT)}]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'NETWORK_PROJECT_ID: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [{<yaml-quote>} {(${ Id.VSub_Name NETWORK_PROJECT)}]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'SALT_TAR_URL: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [{<yaml-quote>} {(${ Id.VSub_Name salt_tar_url)}]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'SALT_TAR_HASH: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [{<yaml-quote>} {(${ Id.VSub_Name SALT_TAR_HASH)}]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'SERVICE_CLUSTER_IP_RANGE: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [{<yaml-quote>} {(${ Id.VSub_Name SERVICE_CLUSTER_IP_RANGE)}]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'KUBERNETES_MASTER_NAME: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [{<yaml-quote>} {(${ Id.VSub_Name KUBERNETES_MASTER_NAME)}]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ALLOCATE_NODE_CIDRS: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ALLOCATE_NODE_CIDRS>
                                    var_name: ALLOCATE_NODE_CIDRS
                                    suffix_op: 
                                      (suffix_op.Unary
                                        op: <Id.VTest_ColonHyphen _>
                                        arg_word: {<false>}
                                      )
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ENABLE_CLUSTER_MONITORING: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ENABLE_CLUSTER_MONITORING>
                                    var_name: ENABLE_CLUSTER_MONITORING
                                    suffix_op: 
                                      (suffix_op.Unary
                                        op: <Id.VTest_ColonHyphen _>
                                        arg_word: {<none>}
                                      )
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ENABLE_METRICS_SERVER: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ENABLE_METRICS_SERVER>
                                    var_name: ENABLE_METRICS_SERVER
                                    suffix_op: 
                                      (suffix_op.Unary
                                        op: <Id.VTest_ColonHyphen _>
                                        arg_word: {<false>}
                                      )
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'DOCKER_REGISTRY_MIRROR_URL: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name DOCKER_REGISTRY_MIRROR_URL>
                                    var_name: DOCKER_REGISTRY_MIRROR_URL
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ENABLE_L7_LOADBALANCING: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ENABLE_L7_LOADBALANCING>
                                    var_name: ENABLE_L7_LOADBALANCING
                                    suffix_op: 
                                      (suffix_op.Unary
                                        op: <Id.VTest_ColonHyphen _>
                                        arg_word: {<none>}
                                      )
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ENABLE_CLUSTER_LOGGING: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ENABLE_CLUSTER_LOGGING>
                                    var_name: ENABLE_CLUSTER_LOGGING
                                    suffix_op: 
                                      (suffix_op.Unary
                                        op: <Id.VTest_ColonHyphen _>
                                        arg_word: {<false>}
                                      )
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ENABLE_CLUSTER_UI: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ENABLE_CLUSTER_UI>
                                    var_name: ENABLE_CLUSTER_UI
                                    suffix_op: 
                                      (suffix_op.Unary
                                        op: <Id.VTest_ColonHyphen _>
                                        arg_word: {<false>}
                                      )
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ENABLE_NODE_PROBLEM_DETECTOR: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ENABLE_NODE_PROBLEM_DETECTOR>
                                    var_name: ENABLE_NODE_PROBLEM_DETECTOR
                                    suffix_op: 
                                      (suffix_op.Unary
                                        op: <Id.VTest_ColonHyphen _>
                                        arg_word: {<none>}
                                      )
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'NODE_PROBLEM_DETECTOR_VERSION: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name NODE_PROBLEM_DETECTOR_VERSION>
                                    var_name: NODE_PROBLEM_DETECTOR_VERSION
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'NODE_PROBLEM_DETECTOR_TAR_HASH: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name NODE_PROBLEM_DETECTOR_TAR_HASH>
                                    var_name: NODE_PROBLEM_DETECTOR_TAR_HASH
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ENABLE_NODE_LOGGING: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ENABLE_NODE_LOGGING>
                                    var_name: ENABLE_NODE_LOGGING
                                    suffix_op: 
                                      (suffix_op.Unary
                                        op: <Id.VTest_ColonHyphen _>
                                        arg_word: {<false>}
                                      )
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ENABLE_RESCHEDULER: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ENABLE_RESCHEDULER>
                                    var_name: ENABLE_RESCHEDULER
                                    suffix_op: 
                                      (suffix_op.Unary
                                        op: <Id.VTest_ColonHyphen _>
                                        arg_word: {<false>}
                                      )
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'LOGGING_DESTINATION: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name LOGGING_DESTINATION>
                                    var_name: LOGGING_DESTINATION
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ELASTICSEARCH_LOGGING_REPLICAS: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ELASTICSEARCH_LOGGING_REPLICAS>
                                    var_name: ELASTICSEARCH_LOGGING_REPLICAS
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ENABLE_CLUSTER_DNS: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ENABLE_CLUSTER_DNS>
                                    var_name: ENABLE_CLUSTER_DNS
                                    suffix_op: 
                                      (suffix_op.Unary
                                        op: <Id.VTest_ColonHyphen _>
                                        arg_word: {<false>}
                                      )
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ENABLE_CLUSTER_REGISTRY: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ENABLE_CLUSTER_REGISTRY>
                                    var_name: ENABLE_CLUSTER_REGISTRY
                                    suffix_op: 
                                      (suffix_op.Unary
                                        op: <Id.VTest_ColonHyphen _>
                                        arg_word: {<false>}
                                      )
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'CLUSTER_REGISTRY_DISK: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name CLUSTER_REGISTRY_DISK>
                                    var_name: CLUSTER_REGISTRY_DISK
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'CLUSTER_REGISTRY_DISK_SIZE: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name CLUSTER_REGISTRY_DISK_SIZE>
                                    var_name: CLUSTER_REGISTRY_DISK_SIZE
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'DNS_SERVER_IP: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name DNS_SERVER_IP>
                                    var_name: DNS_SERVER_IP
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'DNS_DOMAIN: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name DNS_DOMAIN>
                                    var_name: DNS_DOMAIN
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ENABLE_DNS_HORIZONTAL_AUTOSCALER: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ENABLE_DNS_HORIZONTAL_AUTOSCALER>
                                    var_name: ENABLE_DNS_HORIZONTAL_AUTOSCALER
                                    suffix_op: 
                                      (suffix_op.Unary
                                        op: <Id.VTest_ColonHyphen _>
                                        arg_word: {<false>}
                                      )
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'KUBELET_TOKEN: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name KUBELET_TOKEN>
                                    var_name: KUBELET_TOKEN
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'KUBE_PROXY_DAEMONSET: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name KUBE_PROXY_DAEMONSET>
                                    var_name: KUBE_PROXY_DAEMONSET
                                    suffix_op: 
                                      (suffix_op.Unary
                                        op: <Id.VTest_ColonHyphen _>
                                        arg_word: {<false>}
                                      )
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'KUBE_PROXY_TOKEN: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name KUBE_PROXY_TOKEN>
                                    var_name: KUBE_PROXY_TOKEN
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'NODE_PROBLEM_DETECTOR_TOKEN: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name NODE_PROBLEM_DETECTOR_TOKEN>
                                    var_name: NODE_PROBLEM_DETECTOR_TOKEN
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ADMISSION_CONTROL: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ADMISSION_CONTROL>
                                    var_name: ADMISSION_CONTROL
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'MASTER_IP_RANGE: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [{<yaml-quote>} {(${ Id.VSub_Name MASTER_IP_RANGE)}]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'RUNTIME_CONFIG: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [{<yaml-quote>} {(${ Id.VSub_Name RUNTIME_CONFIG)}]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'CA_CERT: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name CA_CERT_BASE64>
                                    var_name: CA_CERT_BASE64
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'KUBELET_CERT: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name KUBELET_CERT_BASE64>
                                    var_name: KUBELET_CERT_BASE64
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'KUBELET_KEY: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name KUBELET_KEY_BASE64>
                                    var_name: KUBELET_KEY_BASE64
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'NETWORK_PROVIDER: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name NETWORK_PROVIDER>
                                    var_name: NETWORK_PROVIDER
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'NETWORK_POLICY_PROVIDER: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name NETWORK_POLICY_PROVIDER>
                                    var_name: NETWORK_POLICY_PROVIDER
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'PREPULL_E2E_IMAGES: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name PREPULL_E2E_IMAGES>
                                    var_name: PREPULL_E2E_IMAGES
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'HAIRPIN_MODE: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name HAIRPIN_MODE>
                                    var_name: HAIRPIN_MODE
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'SOFTLOCKUP_PANIC: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name SOFTLOCKUP_PANIC>
                                    var_name: SOFTLOCKUP_PANIC
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'OPENCONTRAIL_TAG: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name OPENCONTRAIL_TAG>
                                    var_name: OPENCONTRAIL_TAG
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'OPENCONTRAIL_KUBERNETES_TAG: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name OPENCONTRAIL_KUBERNETES_TAG>
                                    var_name: OPENCONTRAIL_KUBERNETES_TAG
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'OPENCONTRAIL_PUBLIC_SUBNET: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name OPENCONTRAIL_PUBLIC_SUBNET>
                                    var_name: OPENCONTRAIL_PUBLIC_SUBNET
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'E2E_STORAGE_TEST_ENVIRONMENT: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name E2E_STORAGE_TEST_ENVIRONMENT>
                                    var_name: E2E_STORAGE_TEST_ENVIRONMENT
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'KUBE_IMAGE_TAG: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name KUBE_IMAGE_TAG>
                                    var_name: KUBE_IMAGE_TAG
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'KUBE_DOCKER_REGISTRY: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name KUBE_DOCKER_REGISTRY>
                                    var_name: KUBE_DOCKER_REGISTRY
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'KUBE_ADDON_REGISTRY: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name KUBE_ADDON_REGISTRY>
                                    var_name: KUBE_ADDON_REGISTRY
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'MULTIZONE: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name MULTIZONE>
                                    var_name: MULTIZONE
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'NON_MASQUERADE_CIDR: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name NON_MASQUERADE_CIDR>
                                    var_name: NON_MASQUERADE_CIDR
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'KUBE_UID: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name KUBE_UID>
                                    var_name: KUBE_UID
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ENABLE_DEFAULT_STORAGE_CLASS: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ENABLE_DEFAULT_STORAGE_CLASS>
                                    var_name: ENABLE_DEFAULT_STORAGE_CLASS
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ENABLE_APISERVER_BASIC_AUDIT: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ENABLE_APISERVER_BASIC_AUDIT>
                                    var_name: ENABLE_APISERVER_BASIC_AUDIT
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ENABLE_APISERVER_ADVANCED_AUDIT: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ENABLE_APISERVER_ADVANCED_AUDIT>
                                    var_name: ENABLE_APISERVER_ADVANCED_AUDIT
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ENABLE_CACHE_MUTATION_DETECTOR: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ENABLE_CACHE_MUTATION_DETECTOR>
                                    var_name: ENABLE_CACHE_MUTATION_DETECTOR
                                    suffix_op: 
                                      (suffix_op.Unary
                                        op: <Id.VTest_ColonHyphen _>
                                        arg_word: {<false>}
                                      )
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ENABLE_PATCH_CONVERSION_DETECTOR: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ENABLE_PATCH_CONVERSION_DETECTOR>
                                    var_name: ENABLE_PATCH_CONVERSION_DETECTOR
                                    suffix_op: 
                                      (suffix_op.Unary
                                        op: <Id.VTest_ColonHyphen _>
                                        arg_word: {<false>}
                                      )
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ADVANCED_AUDIT_POLICY: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ADVANCED_AUDIT_POLICY>
                                    var_name: ADVANCED_AUDIT_POLICY
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ADVANCED_AUDIT_BACKEND: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ADVANCED_AUDIT_BACKEND>
                                    var_name: ADVANCED_AUDIT_BACKEND
                                    suffix_op: 
                                      (suffix_op.Unary
                                        op: <Id.VTest_ColonHyphen _>
                                        arg_word: {<log>}
                                      )
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'GCE_API_ENDPOINT: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name GCE_API_ENDPOINT>
                                    var_name: GCE_API_ENDPOINT
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'PROMETHEUS_TO_SD_ENDPOINT: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name PROMETHEUS_TO_SD_ENDPOINT>
                                    var_name: PROMETHEUS_TO_SD_ENDPOINT
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'PROMETHEUS_TO_SD_PREFIX: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name PROMETHEUS_TO_SD_PREFIX>
                                    var_name: PROMETHEUS_TO_SD_PREFIX
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ENABLE_PROMETHEUS_TO_SD: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ENABLE_PROMETHEUS_TO_SD>
                                    var_name: ENABLE_PROMETHEUS_TO_SD
                                    suffix_op: 
                                      (suffix_op.Unary
                                        op: <Id.VTest_ColonHyphen _>
                                        arg_word: {<false>}
                                      )
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                        <'ENABLE_POD_PRIORITY: '>
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Simple
                              blame_tok: <yaml-quote>
                              more_env: []
                              words: [
                                {<yaml-quote>}
                                {
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name ENABLE_POD_PRIORITY>
                                    var_name: ENABLE_POD_PRIORITY
                                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                          right: <Id.Eof_RParen _>
                        )
                        <'\n'>
                      ]
                    )
                )
              ]
              do_fork: T
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name KUBELET_PORT>
                                      var_name: KUBELET_PORT
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'KUBELET_PORT: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name KUBELET_PORT)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [5436 5452]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name KUBE_APISERVER_REQUEST_TIMEOUT>
                                      var_name: KUBE_APISERVER_REQUEST_TIMEOUT
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'KUBE_APISERVER_REQUEST_TIMEOUT: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {(${ Id.VSub_Name KUBE_APISERVER_REQUEST_TIMEOUT)}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [5478 5494]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name TERMINATED_POD_GC_THRESHOLD>
                                      var_name: TERMINATED_POD_GC_THRESHOLD
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'TERMINATED_POD_GC_THRESHOLD: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {(${ Id.VSub_Name TERMINATED_POD_GC_THRESHOLD)}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [5520 5536]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.AndOr
                              children: [
                                (command.DBracket
                                  left: <Id.KW_DLeftBracket '[['>
                                  expr: 
                                    (bool_expr.LogicalOr
                                      left: 
                                        (bool_expr.LogicalAnd
                                          left: 
                                            (bool_expr.Binary
                                              op_id: Id.BoolBinary_GlobDEqual
                                              left: {(DQ (${ Id.VSub_Name master))}
                                              right: {(DQ <true>)}
                                            )
                                          right: 
                                            (bool_expr.LogicalOr
                                              left: 
                                                (bool_expr.Binary
                                                  op_id: Id.BoolBinary_GlobDEqual
                                                  left: {(DQ (${ Id.VSub_Name MASTER_OS_DISTRIBUTION))}
                                                  right: {(DQ <trusty>)}
                                                )
                                              right: 
                                                (bool_expr.LogicalOr
                                                  left: 
                                                    (bool_expr.Binary
                                                      op_id: Id.BoolBinary_GlobDEqual
                                                      left: 
                                                        {
                                                          (DQ 
                                                            (${ Id.VSub_Name MASTER_OS_DISTRIBUTION)
                                                          )
                                                        }
                                                      right: {(DQ <gci>)}
                                                    )
                                                  right: 
                                                    (bool_expr.Binary
                                                      op_id: Id.BoolBinary_GlobDEqual
                                                      left: 
                                                        {
                                                          (DQ 
                                                            (${ Id.VSub_Name MASTER_OS_DISTRIBUTION)
                                                          )
                                                        }
                                                      right: {(DQ <container-linux>)}
                                                    )
                                                )
                                            )
                                        )
                                      right: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobDEqual
                                          left: {(DQ (${ Id.VSub_Name MASTER_OS_DISTRIBUTION))}
                                          right: {(DQ <ubuntu>)}
                                        )
                                    )
                                  right: <Id.Lit_DRightBracket ']]'>
                                  redirects: []
                                )
                                (command.DBracket
                                  left: <Id.KW_DLeftBracket '[['>
                                  expr: 
                                    (bool_expr.LogicalOr
                                      left: 
                                        (bool_expr.LogicalAnd
                                          left: 
                                            (bool_expr.Binary
                                              op_id: Id.BoolBinary_GlobDEqual
                                              left: {(DQ (${ Id.VSub_Name master))}
                                              right: {(DQ <false>)}
                                            )
                                          right: 
                                            (bool_expr.LogicalOr
                                              left: 
                                                (bool_expr.Binary
                                                  op_id: Id.BoolBinary_GlobDEqual
                                                  left: {(DQ (${ Id.VSub_Name NODE_OS_DISTRIBUTION))}
                                                  right: {(DQ <trusty>)}
                                                )
                                              right: 
                                                (bool_expr.LogicalOr
                                                  left: 
                                                    (bool_expr.Binary
                                                      op_id: Id.BoolBinary_GlobDEqual
                                                      left: 
                                                        {(DQ (${ Id.VSub_Name NODE_OS_DISTRIBUTION))}
                                                      right: {(DQ <gci>)}
                                                    )
                                                  right: 
                                                    (bool_expr.Binary
                                                      op_id: Id.BoolBinary_GlobDEqual
                                                      left: 
                                                        {(DQ (${ Id.VSub_Name NODE_OS_DISTRIBUTION))}
                                                      right: {(DQ <container-linux>)}
                                                    )
                                                )
                                            )
                                        )
                                      right: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobEqual
                                          left: {(DQ (${ Id.VSub_Name NODE_OS_DISTRIBUTION))}
                                          right: {(DQ <ubuntu>)}
                                        )
                                    )
                                  right: <Id.Lit_DRightBracket ']]'>
                                  redirects: []
                                )
                              ]
                              ops: [<Id.Op_DPipe _>]
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'KUBE_MANIFESTS_TAR_URL: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name kube_manifests_tar_url)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'KUBE_MANIFESTS_TAR_HASH: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {(${ Id.VSub_Name KUBE_MANIFESTS_TAR_HASH)}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [5562 5718]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name TEST_CLUSTER>
                                      var_name: TEST_CLUSTER
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'TEST_CLUSTER: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name TEST_CLUSTER)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [5753 5769]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name KUBELET_TEST_ARGS>
                                      var_name: KUBELET_TEST_ARGS
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'KUBELET_TEST_ARGS: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name KUBELET_TEST_ARGS)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [5795 5811]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name NODE_KUBELET_TEST_ARGS>
                                      var_name: NODE_KUBELET_TEST_ARGS
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'NODE_KUBELET_TEST_ARGS: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name NODE_KUBELET_TEST_ARGS)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [5837 5853]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name MASTER_KUBELET_TEST_ARGS>
                                      var_name: MASTER_KUBELET_TEST_ARGS
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'MASTER_KUBELET_TEST_ARGS: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {(${ Id.VSub_Name MASTER_KUBELET_TEST_ARGS)}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [5879 5895]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name KUBELET_TEST_LOG_LEVEL>
                                      var_name: KUBELET_TEST_LOG_LEVEL
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'KUBELET_TEST_LOG_LEVEL: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name KUBELET_TEST_LOG_LEVEL)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [5921 5937]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name DOCKER_TEST_LOG_LEVEL>
                                      var_name: DOCKER_TEST_LOG_LEVEL
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'DOCKER_TEST_LOG_LEVEL: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name DOCKER_TEST_LOG_LEVEL)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [5963 5979]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name DOCKER_LOG_DRIVER>
                                      var_name: DOCKER_LOG_DRIVER
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'DOCKER_LOG_DRIVER: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name DOCKER_LOG_DRIVER)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [6005 6021]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name DOCKER_LOG_MAX_SIZE>
                                      var_name: DOCKER_LOG_MAX_SIZE
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'DOCKER_LOG_MAX_SIZE: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name DOCKER_LOG_MAX_SIZE)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [6047 6063]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name DOCKER_LOG_MAX_FILE>
                                      var_name: DOCKER_LOG_MAX_FILE
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'DOCKER_LOG_MAX_FILE: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name DOCKER_LOG_MAX_FILE)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [6089 6105]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name ENABLE_CUSTOM_METRICS>
                                      var_name: ENABLE_CUSTOM_METRICS
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'ENABLE_CUSTOM_METRICS: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name ENABLE_CUSTOM_METRICS)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [6131 6147]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name ENABLE_METADATA_PROXY>
                                      var_name: ENABLE_METADATA_PROXY
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'ENABLE_METADATA_PROXY: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name ENABLE_METADATA_PROXY)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [6173 6189]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name KUBE_FIREWALL_METADATA_SERVER>
                                      var_name: KUBE_FIREWALL_METADATA_SERVER
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'KUBE_FIREWALL_METADATA_SERVER: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {(${ Id.VSub_Name KUBE_FIREWALL_METADATA_SERVER)}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [6215 6231]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name FEATURE_GATES>
                                      var_name: FEATURE_GATES
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'FEATURE_GATES: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name FEATURE_GATES)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [6257 6273]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name ROTATE_CERTIFICATES>
                                      var_name: ROTATE_CERTIFICATES
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'ROTATE_CERTIFICATES: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name ROTATE_CERTIFICATES)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [6299 6315]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.AndOr
                              children: [
                                (command.DBracket
                                  left: <Id.KW_DLeftBracket '[['>
                                  expr: 
                                    (bool_expr.LogicalAnd
                                      left: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobDEqual
                                          left: {(DQ (${ Id.VSub_Name master))}
                                          right: {(DQ <true>)}
                                        )
                                      right: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobDEqual
                                          left: {(DQ (${ Id.VSub_Name MASTER_OS_DISTRIBUTION))}
                                          right: {(DQ <gci>)}
                                        )
                                    )
                                  right: <Id.Lit_DRightBracket ']]'>
                                  redirects: []
                                )
                                (command.DBracket
                                  left: <Id.KW_DLeftBracket '[['>
                                  expr: 
                                    (bool_expr.LogicalAnd
                                      left: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobDEqual
                                          left: {(DQ (${ Id.VSub_Name master))}
                                          right: {(DQ <false>)}
                                        )
                                      right: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobDEqual
                                          left: {(DQ (${ Id.VSub_Name NODE_OS_DISTRIBUTION))}
                                          right: {(DQ <gci>)}
                                        )
                                    )
                                  right: <Id.Lit_DRightBracket ']]'>
                                  redirects: []
                                )
                              ]
                              ops: [<Id.Op_DPipe _>]
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'VOLUME_PLUGIN_DIR: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name VOLUME_PLUGIN_DIR>
                                            var_name: VOLUME_PLUGIN_DIR
                                            suffix_op: 
                                              (suffix_op.Unary
                                                op: <Id.VTest_ColonHyphen _>
                                                arg_word: 
                                                  {<Id.Lit_Slash '/'> <etc> <Id.Lit_Slash '/'> <srv> 
                                                    <Id.Lit_Slash '/'> <kubernetes> <Id.Lit_Slash '/'> <kubelet-plugins> <Id.Lit_Slash '/'> <volume> <Id.Lit_Slash '/'> <exec>
                                                  }
                                              )
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [6341 6407]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name PROVIDER_VARS>
                                      var_name: PROVIDER_VARS
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <local>
                      more_env: []
                      words: [{<local>} {<var_name>}]
                      redirects: []
                      do_fork: T
                    )
                    (command.Simple
                      blame_tok: <local>
                      more_env: []
                      words: [{<local>} {<var_value>}]
                      redirects: []
                      do_fork: T
                    )
                    (command.ForEach
                      keyword: <Id.KW_For for>
                      iter_names: [var_name]
                      iterable: (for_iter.Words words:[{(${ Id.VSub_Name PROVIDER_VARS)}])
                      semi_tok: <Id.Op_Semi _>
                      body: 
                        (command.DoGroup
                          left: <Id.KW_Do do>
                          children: [
                            (command.Simple
                              blame_tok: <eval>
                              more_env: []
                              words: [
                                {<eval>}
                                {
                                  (DQ <'local var_value='> 
                                    (word_part.EscapedLiteral
                                      token: <Id.Lit_EscapedChar '\\$'>
                                      ch: '$'
                                    ) <'(yaml-quote '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'> ch:'$') <'{'> 
                                    (${ Id.VSub_Name var_name) <'})'>
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                            (command.Simple
                              blame_tok: <cat>
                              more_env: []
                              words: [{<cat>}]
                              redirects: [
                                (Redir
                                  op: <Id.Redir_DGreat '>>'>
                                  loc: (redir_loc.Fd fd:1)
                                  arg: {($ Id.VSub_DollarName file)}
                                )
                                (Redir
                                  op: <Id.Redir_DLess '<<'>
                                  loc: (redir_loc.Fd fd:0)
                                  arg: 
                                    (redir_param.HereDoc
                                      here_begin: {<EOF>}
                                      here_end_tok: <Id.Undefined_Tok ''>
                                      stdin_parts: [
                                        (${ Id.VSub_Name var_name)
                                        <': '>
                                        (${ Id.VSub_Name var_value)
                                        <'\n'>
                                      ]
                                    )
                                )
                              ]
                              do_fork: T
                            )
                          ]
                          right: <Id.KW_Done done>
                        )
                      redirects: []
                    )
                  ]
                  spids: [6447 6463]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Binary
                                  op_id: Id.BoolBinary_GlobDEqual
                                  left: {(DQ (${ Id.VSub_Name master))}
                                  right: {(DQ <true>)}
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'KUBERNETES_MASTER: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(DQ <true>)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'KUBE_USER: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name KUBE_USER)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'KUBE_PASSWORD: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name KUBE_PASSWORD)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'KUBE_BEARER_TOKEN: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name KUBE_BEARER_TOKEN)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'MASTER_CERT: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name MASTER_CERT_BASE64>
                                            var_name: MASTER_CERT_BASE64
                                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'MASTER_KEY: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name MASTER_KEY_BASE64>
                                            var_name: MASTER_KEY_BASE64
                                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'KUBECFG_CERT: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name KUBECFG_CERT_BASE64>
                                            var_name: KUBECFG_CERT_BASE64
                                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'KUBECFG_KEY: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name KUBECFG_KEY_BASE64>
                                            var_name: KUBECFG_KEY_BASE64
                                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'KUBELET_APISERVER: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name KUBELET_APISERVER>
                                            var_name: KUBELET_APISERVER
                                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'ENABLE_MANIFEST_URL: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name ENABLE_MANIFEST_URL>
                                            var_name: ENABLE_MANIFEST_URL
                                            suffix_op: 
                                              (suffix_op.Unary
                                                op: <Id.VTest_ColonHyphen _>
                                                arg_word: {<false>}
                                              )
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'MANIFEST_URL: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name MANIFEST_URL>
                                            var_name: MANIFEST_URL
                                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'MANIFEST_URL_HEADER: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name MANIFEST_URL_HEADER>
                                            var_name: MANIFEST_URL_HEADER
                                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'NUM_NODES: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name NUM_NODES)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'STORAGE_BACKEND: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name STORAGE_BACKEND>
                                            var_name: STORAGE_BACKEND
                                            suffix_op: 
                                              (suffix_op.Unary
                                                op: <Id.VTest_ColonHyphen _>
                                                arg_word: {<etcd3>}
                                              )
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'STORAGE_MEDIA_TYPE: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name STORAGE_MEDIA_TYPE>
                                            var_name: STORAGE_MEDIA_TYPE
                                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'ENABLE_GARBAGE_COLLECTOR: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name ENABLE_GARBAGE_COLLECTOR>
                                            var_name: ENABLE_GARBAGE_COLLECTOR
                                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'ENABLE_LEGACY_ABAC: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name ENABLE_LEGACY_ABAC>
                                            var_name: ENABLE_LEGACY_ABAC
                                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'MASTER_ADVERTISE_ADDRESS: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name MASTER_ADVERTISE_ADDRESS>
                                            var_name: MASTER_ADVERTISE_ADDRESS
                                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'ETCD_CA_KEY: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name ETCD_CA_KEY_BASE64>
                                            var_name: ETCD_CA_KEY_BASE64
                                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'ETCD_CA_CERT: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name ETCD_CA_CERT_BASE64>
                                            var_name: ETCD_CA_CERT_BASE64
                                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'ETCD_PEER_KEY: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name ETCD_PEER_KEY_BASE64>
                                            var_name: ETCD_PEER_KEY_BASE64
                                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'ETCD_PEER_CERT: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name ETCD_PEER_CERT_BASE64>
                                            var_name: ETCD_PEER_CERT_BASE64
                                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                    (command.If
                      if_kw: <Id.KW_If if>
                      arms: [
                        (IfArm
                          keyword: <Id.KW_If if>
                          cond: 
                            (condition.Shell
                              commands: [
                                (command.Sentence
                                  child: 
                                    (command.Simple
                                      blame_tok: <Id.Lit_LBracket '['>
                                      more_env: []
                                      words: [
                                        {<Id.Lit_LBracket '['>}
                                        {<-n>}
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: 
                                                <Id.VSub_Name KUBE_APISERVER_REQUEST_TIMEOUT_SEC>
                                              var_name: KUBE_APISERVER_REQUEST_TIMEOUT_SEC
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                        {<Id.Lit_RBracket ']'>}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  terminator: <Id.Op_Semi _>
                                )
                              ]
                            )
                          then_kw: <Id.KW_Then then>
                          action: [
                            (command.Simple
                              blame_tok: <cat>
                              more_env: []
                              words: [{<cat>}]
                              redirects: [
                                (Redir
                                  op: <Id.Redir_DGreat '>>'>
                                  loc: (redir_loc.Fd fd:1)
                                  arg: {($ Id.VSub_DollarName file)}
                                )
                                (Redir
                                  op: <Id.Redir_DLess '<<'>
                                  loc: (redir_loc.Fd fd:0)
                                  arg: 
                                    (redir_param.HereDoc
                                      here_begin: {<EOF>}
                                      here_end_tok: <Id.Undefined_Tok ''>
                                      stdin_parts: [
                                        <'KUBE_APISERVER_REQUEST_TIMEOUT_SEC: '>
                                        (CommandSub
                                          left_token: <Id.Left_DollarParen '$('>
                                          child: 
                                            (command.Simple
                                              blame_tok: <yaml-quote>
                                              more_env: []
                                              words: [
                                                {<yaml-quote>}
                                                {
                                                  (${ Id.VSub_Name KUBE_APISERVER_REQUEST_TIMEOUT_SEC)
                                                }
                                              ]
                                              redirects: []
                                              do_fork: T
                                            )
                                          right: <Id.Eof_RParen _>
                                        )
                                        <'\n'>
                                      ]
                                    )
                                )
                              ]
                              do_fork: T
                            )
                          ]
                          spids: [6794 6810]
                        )
                      ]
                      else_action: []
                      fi_kw: <Id.KW_Fi fi>
                      redirects: []
                    )
                    (command.If
                      if_kw: <Id.KW_If if>
                      arms: [
                        (IfArm
                          keyword: <Id.KW_If if>
                          cond: 
                            (condition.Shell
                              commands: [
                                (command.Sentence
                                  child: 
                                    (command.Simple
                                      blame_tok: <Id.Lit_LBracket '['>
                                      more_env: []
                                      words: [
                                        {<Id.Lit_LBracket '['>}
                                        {<-n>}
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name ETCD_IMAGE>
                                              var_name: ETCD_IMAGE
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                        {<Id.Lit_RBracket ']'>}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  terminator: <Id.Op_Semi _>
                                )
                              ]
                            )
                          then_kw: <Id.KW_Then then>
                          action: [
                            (command.Simple
                              blame_tok: <cat>
                              more_env: []
                              words: [{<cat>}]
                              redirects: [
                                (Redir
                                  op: <Id.Redir_DGreat '>>'>
                                  loc: (redir_loc.Fd fd:1)
                                  arg: {($ Id.VSub_DollarName file)}
                                )
                                (Redir
                                  op: <Id.Redir_DLess '<<'>
                                  loc: (redir_loc.Fd fd:0)
                                  arg: 
                                    (redir_param.HereDoc
                                      here_begin: {<EOF>}
                                      here_end_tok: <Id.Undefined_Tok ''>
                                      stdin_parts: [
                                        <'ETCD_IMAGE: '>
                                        (CommandSub
                                          left_token: <Id.Left_DollarParen '$('>
                                          child: 
                                            (command.Simple
                                              blame_tok: <yaml-quote>
                                              more_env: []
                                              words: [{<yaml-quote>} {(${ Id.VSub_Name ETCD_IMAGE)}]
                                              redirects: []
                                              do_fork: T
                                            )
                                          right: <Id.Eof_RParen _>
                                        )
                                        <'\n'>
                                      ]
                                    )
                                )
                              ]
                              do_fork: T
                            )
                          ]
                          spids: [6840 6856]
                        )
                      ]
                      else_action: []
                      fi_kw: <Id.KW_Fi fi>
                      redirects: []
                    )
                    (command.If
                      if_kw: <Id.KW_If if>
                      arms: [
                        (IfArm
                          keyword: <Id.KW_If if>
                          cond: 
                            (condition.Shell
                              commands: [
                                (command.Sentence
                                  child: 
                                    (command.Simple
                                      blame_tok: <Id.Lit_LBracket '['>
                                      more_env: []
                                      words: [
                                        {<Id.Lit_LBracket '['>}
                                        {<-n>}
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name ETCD_DOCKER_REPOSITORY>
                                              var_name: ETCD_DOCKER_REPOSITORY
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                        {<Id.Lit_RBracket ']'>}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  terminator: <Id.Op_Semi _>
                                )
                              ]
                            )
                          then_kw: <Id.KW_Then then>
                          action: [
                            (command.Simple
                              blame_tok: <cat>
                              more_env: []
                              words: [{<cat>}]
                              redirects: [
                                (Redir
                                  op: <Id.Redir_DGreat '>>'>
                                  loc: (redir_loc.Fd fd:1)
                                  arg: {($ Id.VSub_DollarName file)}
                                )
                                (Redir
                                  op: <Id.Redir_DLess '<<'>
                                  loc: (redir_loc.Fd fd:0)
                                  arg: 
                                    (redir_param.HereDoc
                                      here_begin: {<EOF>}
                                      here_end_tok: <Id.Undefined_Tok ''>
                                      stdin_parts: [
                                        <'ETCD_DOCKER_REPOSITORY: '>
                                        (CommandSub
                                          left_token: <Id.Left_DollarParen '$('>
                                          child: 
                                            (command.Simple
                                              blame_tok: <yaml-quote>
                                              more_env: []
                                              words: [
                                                {<yaml-quote>}
                                                {(${ Id.VSub_Name ETCD_DOCKER_REPOSITORY)}
                                              ]
                                              redirects: []
                                              do_fork: T
                                            )
                                          right: <Id.Eof_RParen _>
                                        )
                                        <'\n'>
                                      ]
                                    )
                                )
                              ]
                              do_fork: T
                            )
                          ]
                          spids: [6886 6902]
                        )
                      ]
                      else_action: []
                      fi_kw: <Id.KW_Fi fi>
                      redirects: []
                    )
                    (command.If
                      if_kw: <Id.KW_If if>
                      arms: [
                        (IfArm
                          keyword: <Id.KW_If if>
                          cond: 
                            (condition.Shell
                              commands: [
                                (command.Sentence
                                  child: 
                                    (command.Simple
                                      blame_tok: <Id.Lit_LBracket '['>
                                      more_env: []
                                      words: [
                                        {<Id.Lit_LBracket '['>}
                                        {<-n>}
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name ETCD_VERSION>
                                              var_name: ETCD_VERSION
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                        {<Id.Lit_RBracket ']'>}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  terminator: <Id.Op_Semi _>
                                )
                              ]
                            )
                          then_kw: <Id.KW_Then then>
                          action: [
                            (command.Simple
                              blame_tok: <cat>
                              more_env: []
                              words: [{<cat>}]
                              redirects: [
                                (Redir
                                  op: <Id.Redir_DGreat '>>'>
                                  loc: (redir_loc.Fd fd:1)
                                  arg: {($ Id.VSub_DollarName file)}
                                )
                                (Redir
                                  op: <Id.Redir_DLess '<<'>
                                  loc: (redir_loc.Fd fd:0)
                                  arg: 
                                    (redir_param.HereDoc
                                      here_begin: {<EOF>}
                                      here_end_tok: <Id.Undefined_Tok ''>
                                      stdin_parts: [
                                        <'ETCD_VERSION: '>
                                        (CommandSub
                                          left_token: <Id.Left_DollarParen '$('>
                                          child: 
                                            (command.Simple
                                              blame_tok: <yaml-quote>
                                              more_env: []
                                              words: [{<yaml-quote>} {(${ Id.VSub_Name ETCD_VERSION)}]
                                              redirects: []
                                              do_fork: T
                                            )
                                          right: <Id.Eof_RParen _>
                                        )
                                        <'\n'>
                                      ]
                                    )
                                )
                              ]
                              do_fork: T
                            )
                          ]
                          spids: [6940 6956]
                        )
                      ]
                      else_action: []
                      fi_kw: <Id.KW_Fi fi>
                      redirects: []
                    )
                    (command.If
                      if_kw: <Id.KW_If if>
                      arms: [
                        (IfArm
                          keyword: <Id.KW_If if>
                          cond: 
                            (condition.Shell
                              commands: [
                                (command.Sentence
                                  child: 
                                    (command.Simple
                                      blame_tok: <Id.Lit_LBracket '['>
                                      more_env: []
                                      words: [
                                        {<Id.Lit_LBracket '['>}
                                        {<-n>}
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name APISERVER_TEST_ARGS>
                                              var_name: APISERVER_TEST_ARGS
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                        {<Id.Lit_RBracket ']'>}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  terminator: <Id.Op_Semi _>
                                )
                              ]
                            )
                          then_kw: <Id.KW_Then then>
                          action: [
                            (command.Simple
                              blame_tok: <cat>
                              more_env: []
                              words: [{<cat>}]
                              redirects: [
                                (Redir
                                  op: <Id.Redir_DGreat '>>'>
                                  loc: (redir_loc.Fd fd:1)
                                  arg: {($ Id.VSub_DollarName file)}
                                )
                                (Redir
                                  op: <Id.Redir_DLess '<<'>
                                  loc: (redir_loc.Fd fd:0)
                                  arg: 
                                    (redir_param.HereDoc
                                      here_begin: {<EOF>}
                                      here_end_tok: <Id.Undefined_Tok ''>
                                      stdin_parts: [
                                        <'APISERVER_TEST_ARGS: '>
                                        (CommandSub
                                          left_token: <Id.Left_DollarParen '$('>
                                          child: 
                                            (command.Simple
                                              blame_tok: <yaml-quote>
                                              more_env: []
                                              words: [
                                                {<yaml-quote>}
                                                {(${ Id.VSub_Name APISERVER_TEST_ARGS)}
                                              ]
                                              redirects: []
                                              do_fork: T
                                            )
                                          right: <Id.Eof_RParen _>
                                        )
                                        <'\n'>
                                      ]
                                    )
                                )
                              ]
                              do_fork: T
                            )
                          ]
                          spids: [6982 6998]
                        )
                      ]
                      else_action: []
                      fi_kw: <Id.KW_Fi fi>
                      redirects: []
                    )
                    (command.If
                      if_kw: <Id.KW_If if>
                      arms: [
                        (IfArm
                          keyword: <Id.KW_If if>
                          cond: 
                            (condition.Shell
                              commands: [
                                (command.Sentence
                                  child: 
                                    (command.Simple
                                      blame_tok: <Id.Lit_LBracket '['>
                                      more_env: []
                                      words: [
                                        {<Id.Lit_LBracket '['>}
                                        {<-n>}
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name APISERVER_TEST_LOG_LEVEL>
                                              var_name: APISERVER_TEST_LOG_LEVEL
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                        {<Id.Lit_RBracket ']'>}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  terminator: <Id.Op_Semi _>
                                )
                              ]
                            )
                          then_kw: <Id.KW_Then then>
                          action: [
                            (command.Simple
                              blame_tok: <cat>
                              more_env: []
                              words: [{<cat>}]
                              redirects: [
                                (Redir
                                  op: <Id.Redir_DGreat '>>'>
                                  loc: (redir_loc.Fd fd:1)
                                  arg: {($ Id.VSub_DollarName file)}
                                )
                                (Redir
                                  op: <Id.Redir_DLess '<<'>
                                  loc: (redir_loc.Fd fd:0)
                                  arg: 
                                    (redir_param.HereDoc
                                      here_begin: {<EOF>}
                                      here_end_tok: <Id.Undefined_Tok ''>
                                      stdin_parts: [
                                        <'APISERVER_TEST_LOG_LEVEL: '>
                                        (CommandSub
                                          left_token: <Id.Left_DollarParen '$('>
                                          child: 
                                            (command.Simple
                                              blame_tok: <yaml-quote>
                                              more_env: []
                                              words: [
                                                {<yaml-quote>}
                                                {(${ Id.VSub_Name APISERVER_TEST_LOG_LEVEL)}
                                              ]
                                              redirects: []
                                              do_fork: T
                                            )
                                          right: <Id.Eof_RParen _>
                                        )
                                        <'\n'>
                                      ]
                                    )
                                )
                              ]
                              do_fork: T
                            )
                          ]
                          spids: [7024 7040]
                        )
                      ]
                      else_action: []
                      fi_kw: <Id.KW_Fi fi>
                      redirects: []
                    )
                    (command.If
                      if_kw: <Id.KW_If if>
                      arms: [
                        (IfArm
                          keyword: <Id.KW_If if>
                          cond: 
                            (condition.Shell
                              commands: [
                                (command.Sentence
                                  child: 
                                    (command.Simple
                                      blame_tok: <Id.Lit_LBracket '['>
                                      more_env: []
                                      words: [
                                        {<Id.Lit_LBracket '['>}
                                        {<-n>}
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name CONTROLLER_MANAGER_TEST_ARGS>
                                              var_name: CONTROLLER_MANAGER_TEST_ARGS
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                        {<Id.Lit_RBracket ']'>}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  terminator: <Id.Op_Semi _>
                                )
                              ]
                            )
                          then_kw: <Id.KW_Then then>
                          action: [
                            (command.Simple
                              blame_tok: <cat>
                              more_env: []
                              words: [{<cat>}]
                              redirects: [
                                (Redir
                                  op: <Id.Redir_DGreat '>>'>
                                  loc: (redir_loc.Fd fd:1)
                                  arg: {($ Id.VSub_DollarName file)}
                                )
                                (Redir
                                  op: <Id.Redir_DLess '<<'>
                                  loc: (redir_loc.Fd fd:0)
                                  arg: 
                                    (redir_param.HereDoc
                                      here_begin: {<EOF>}
                                      here_end_tok: <Id.Undefined_Tok ''>
                                      stdin_parts: [
                                        <'CONTROLLER_MANAGER_TEST_ARGS: '>
                                        (CommandSub
                                          left_token: <Id.Left_DollarParen '$('>
                                          child: 
                                            (command.Simple
                                              blame_tok: <yaml-quote>
                                              more_env: []
                                              words: [
                                                {<yaml-quote>}
                                                {(${ Id.VSub_Name CONTROLLER_MANAGER_TEST_ARGS)}
                                              ]
                                              redirects: []
                                              do_fork: T
                                            )
                                          right: <Id.Eof_RParen _>
                                        )
                                        <'\n'>
                                      ]
                                    )
                                )
                              ]
                              do_fork: T
                            )
                          ]
                          spids: [7066 7082]
                        )
                      ]
                      else_action: []
                      fi_kw: <Id.KW_Fi fi>
                      redirects: []
                    )
                    (command.If
                      if_kw: <Id.KW_If if>
                      arms: [
                        (IfArm
                          keyword: <Id.KW_If if>
                          cond: 
                            (condition.Shell
                              commands: [
                                (command.Sentence
                                  child: 
                                    (command.Simple
                                      blame_tok: <Id.Lit_LBracket '['>
                                      more_env: []
                                      words: [
                                        {<Id.Lit_LBracket '['>}
                                        {<-n>}
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name CONTROLLER_MANAGER_TEST_LOG_LEVEL>
                                              var_name: CONTROLLER_MANAGER_TEST_LOG_LEVEL
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                        {<Id.Lit_RBracket ']'>}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  terminator: <Id.Op_Semi _>
                                )
                              ]
                            )
                          then_kw: <Id.KW_Then then>
                          action: [
                            (command.Simple
                              blame_tok: <cat>
                              more_env: []
                              words: [{<cat>}]
                              redirects: [
                                (Redir
                                  op: <Id.Redir_DGreat '>>'>
                                  loc: (redir_loc.Fd fd:1)
                                  arg: {($ Id.VSub_DollarName file)}
                                )
                                (Redir
                                  op: <Id.Redir_DLess '<<'>
                                  loc: (redir_loc.Fd fd:0)
                                  arg: 
                                    (redir_param.HereDoc
                                      here_begin: {<EOF>}
                                      here_end_tok: <Id.Undefined_Tok ''>
                                      stdin_parts: [
                                        <'CONTROLLER_MANAGER_TEST_LOG_LEVEL: '>
                                        (CommandSub
                                          left_token: <Id.Left_DollarParen '$('>
                                          child: 
                                            (command.Simple
                                              blame_tok: <yaml-quote>
                                              more_env: []
                                              words: [
                                                {<yaml-quote>}
                                                {(${ Id.VSub_Name CONTROLLER_MANAGER_TEST_LOG_LEVEL)}
                                              ]
                                              redirects: []
                                              do_fork: T
                                            )
                                          right: <Id.Eof_RParen _>
                                        )
                                        <'\n'>
                                      ]
                                    )
                                )
                              ]
                              do_fork: T
                            )
                          ]
                          spids: [7108 7124]
                        )
                      ]
                      else_action: []
                      fi_kw: <Id.KW_Fi fi>
                      redirects: []
                    )
                    (command.If
                      if_kw: <Id.KW_If if>
                      arms: [
                        (IfArm
                          keyword: <Id.KW_If if>
                          cond: 
                            (condition.Shell
                              commands: [
                                (command.Sentence
                                  child: 
                                    (command.Simple
                                      blame_tok: <Id.Lit_LBracket '['>
                                      more_env: []
                                      words: [
                                        {<Id.Lit_LBracket '['>}
                                        {<-n>}
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name SCHEDULER_TEST_ARGS>
                                              var_name: SCHEDULER_TEST_ARGS
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                        {<Id.Lit_RBracket ']'>}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  terminator: <Id.Op_Semi _>
                                )
                              ]
                            )
                          then_kw: <Id.KW_Then then>
                          action: [
                            (command.Simple
                              blame_tok: <cat>
                              more_env: []
                              words: [{<cat>}]
                              redirects: [
                                (Redir
                                  op: <Id.Redir_DGreat '>>'>
                                  loc: (redir_loc.Fd fd:1)
                                  arg: {($ Id.VSub_DollarName file)}
                                )
                                (Redir
                                  op: <Id.Redir_DLess '<<'>
                                  loc: (redir_loc.Fd fd:0)
                                  arg: 
                                    (redir_param.HereDoc
                                      here_begin: {<EOF>}
                                      here_end_tok: <Id.Undefined_Tok ''>
                                      stdin_parts: [
                                        <'SCHEDULER_TEST_ARGS: '>
                                        (CommandSub
                                          left_token: <Id.Left_DollarParen '$('>
                                          child: 
                                            (command.Simple
                                              blame_tok: <yaml-quote>
                                              more_env: []
                                              words: [
                                                {<yaml-quote>}
                                                {(${ Id.VSub_Name SCHEDULER_TEST_ARGS)}
                                              ]
                                              redirects: []
                                              do_fork: T
                                            )
                                          right: <Id.Eof_RParen _>
                                        )
                                        <'\n'>
                                      ]
                                    )
                                )
                              ]
                              do_fork: T
                            )
                          ]
                          spids: [7150 7166]
                        )
                      ]
                      else_action: []
                      fi_kw: <Id.KW_Fi fi>
                      redirects: []
                    )
                    (command.If
                      if_kw: <Id.KW_If if>
                      arms: [
                        (IfArm
                          keyword: <Id.KW_If if>
                          cond: 
                            (condition.Shell
                              commands: [
                                (command.Sentence
                                  child: 
                                    (command.Simple
                                      blame_tok: <Id.Lit_LBracket '['>
                                      more_env: []
                                      words: [
                                        {<Id.Lit_LBracket '['>}
                                        {<-n>}
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name SCHEDULER_TEST_LOG_LEVEL>
                                              var_name: SCHEDULER_TEST_LOG_LEVEL
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                        {<Id.Lit_RBracket ']'>}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  terminator: <Id.Op_Semi _>
                                )
                              ]
                            )
                          then_kw: <Id.KW_Then then>
                          action: [
                            (command.Simple
                              blame_tok: <cat>
                              more_env: []
                              words: [{<cat>}]
                              redirects: [
                                (Redir
                                  op: <Id.Redir_DGreat '>>'>
                                  loc: (redir_loc.Fd fd:1)
                                  arg: {($ Id.VSub_DollarName file)}
                                )
                                (Redir
                                  op: <Id.Redir_DLess '<<'>
                                  loc: (redir_loc.Fd fd:0)
                                  arg: 
                                    (redir_param.HereDoc
                                      here_begin: {<EOF>}
                                      here_end_tok: <Id.Undefined_Tok ''>
                                      stdin_parts: [
                                        <'SCHEDULER_TEST_LOG_LEVEL: '>
                                        (CommandSub
                                          left_token: <Id.Left_DollarParen '$('>
                                          child: 
                                            (command.Simple
                                              blame_tok: <yaml-quote>
                                              more_env: []
                                              words: [
                                                {<yaml-quote>}
                                                {(${ Id.VSub_Name SCHEDULER_TEST_LOG_LEVEL)}
                                              ]
                                              redirects: []
                                              do_fork: T
                                            )
                                          right: <Id.Eof_RParen _>
                                        )
                                        <'\n'>
                                      ]
                                    )
                                )
                              ]
                              do_fork: T
                            )
                          ]
                          spids: [7192 7208]
                        )
                      ]
                      else_action: []
                      fi_kw: <Id.KW_Fi fi>
                      redirects: []
                    )
                    (command.If
                      if_kw: <Id.KW_If if>
                      arms: [
                        (IfArm
                          keyword: <Id.KW_If if>
                          cond: 
                            (condition.Shell
                              commands: [
                                (command.Sentence
                                  child: 
                                    (command.Simple
                                      blame_tok: <Id.Lit_LBracket '['>
                                      more_env: []
                                      words: [
                                        {<Id.Lit_LBracket '['>}
                                        {<-n>}
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name INITIAL_ETCD_CLUSTER>
                                              var_name: INITIAL_ETCD_CLUSTER
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                        {<Id.Lit_RBracket ']'>}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  terminator: <Id.Op_Semi _>
                                )
                              ]
                            )
                          then_kw: <Id.KW_Then then>
                          action: [
                            (command.Simple
                              blame_tok: <cat>
                              more_env: []
                              words: [{<cat>}]
                              redirects: [
                                (Redir
                                  op: <Id.Redir_DGreat '>>'>
                                  loc: (redir_loc.Fd fd:1)
                                  arg: {($ Id.VSub_DollarName file)}
                                )
                                (Redir
                                  op: <Id.Redir_DLess '<<'>
                                  loc: (redir_loc.Fd fd:0)
                                  arg: 
                                    (redir_param.HereDoc
                                      here_begin: {<EOF>}
                                      here_end_tok: <Id.Undefined_Tok ''>
                                      stdin_parts: [
                                        <'INITIAL_ETCD_CLUSTER: '>
                                        (CommandSub
                                          left_token: <Id.Left_DollarParen '$('>
                                          child: 
                                            (command.Simple
                                              blame_tok: <yaml-quote>
                                              more_env: []
                                              words: [
                                                {<yaml-quote>}
                                                {(${ Id.VSub_Name INITIAL_ETCD_CLUSTER)}
                                              ]
                                              redirects: []
                                              do_fork: T
                                            )
                                          right: <Id.Eof_RParen _>
                                        )
                                        <'\n'>
                                      ]
                                    )
                                )
                              ]
                              do_fork: T
                            )
                          ]
                          spids: [7234 7250]
                        )
                      ]
                      else_action: []
                      fi_kw: <Id.KW_Fi fi>
                      redirects: []
                    )
                    (command.If
                      if_kw: <Id.KW_If if>
                      arms: [
                        (IfArm
                          keyword: <Id.KW_If if>
                          cond: 
                            (condition.Shell
                              commands: [
                                (command.Sentence
                                  child: 
                                    (command.Simple
                                      blame_tok: <Id.Lit_LBracket '['>
                                      more_env: []
                                      words: [
                                        {<Id.Lit_LBracket '['>}
                                        {<-n>}
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name INITIAL_ETCD_CLUSTER_STATE>
                                              var_name: INITIAL_ETCD_CLUSTER_STATE
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                        {<Id.Lit_RBracket ']'>}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  terminator: <Id.Op_Semi _>
                                )
                              ]
                            )
                          then_kw: <Id.KW_Then then>
                          action: [
                            (command.Simple
                              blame_tok: <cat>
                              more_env: []
                              words: [{<cat>}]
                              redirects: [
                                (Redir
                                  op: <Id.Redir_DGreat '>>'>
                                  loc: (redir_loc.Fd fd:1)
                                  arg: {($ Id.VSub_DollarName file)}
                                )
                                (Redir
                                  op: <Id.Redir_DLess '<<'>
                                  loc: (redir_loc.Fd fd:0)
                                  arg: 
                                    (redir_param.HereDoc
                                      here_begin: {<EOF>}
                                      here_end_tok: <Id.Undefined_Tok ''>
                                      stdin_parts: [
                                        <'INITIAL_ETCD_CLUSTER_STATE: '>
                                        (CommandSub
                                          left_token: <Id.Left_DollarParen '$('>
                                          child: 
                                            (command.Simple
                                              blame_tok: <yaml-quote>
                                              more_env: []
                                              words: [
                                                {<yaml-quote>}
                                                {(${ Id.VSub_Name INITIAL_ETCD_CLUSTER_STATE)}
                                              ]
                                              redirects: []
                                              do_fork: T
                                            )
                                          right: <Id.Eof_RParen _>
                                        )
                                        <'\n'>
                                      ]
                                    )
                                )
                              ]
                              do_fork: T
                            )
                          ]
                          spids: [7276 7292]
                        )
                      ]
                      else_action: []
                      fi_kw: <Id.KW_Fi fi>
                      redirects: []
                    )
                    (command.If
                      if_kw: <Id.KW_If if>
                      arms: [
                        (IfArm
                          keyword: <Id.KW_If if>
                          cond: 
                            (condition.Shell
                              commands: [
                                (command.Sentence
                                  child: 
                                    (command.Simple
                                      blame_tok: <Id.Lit_LBracket '['>
                                      more_env: []
                                      words: [
                                        {<Id.Lit_LBracket '['>}
                                        {<-n>}
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name ETCD_QUORUM_READ>
                                              var_name: ETCD_QUORUM_READ
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                        {<Id.Lit_RBracket ']'>}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  terminator: <Id.Op_Semi _>
                                )
                              ]
                            )
                          then_kw: <Id.KW_Then then>
                          action: [
                            (command.Simple
                              blame_tok: <cat>
                              more_env: []
                              words: [{<cat>}]
                              redirects: [
                                (Redir
                                  op: <Id.Redir_DGreat '>>'>
                                  loc: (redir_loc.Fd fd:1)
                                  arg: {($ Id.VSub_DollarName file)}
                                )
                                (Redir
                                  op: <Id.Redir_DLess '<<'>
                                  loc: (redir_loc.Fd fd:0)
                                  arg: 
                                    (redir_param.HereDoc
                                      here_begin: {<EOF>}
                                      here_end_tok: <Id.Undefined_Tok ''>
                                      stdin_parts: [
                                        <'ETCD_QUORUM_READ: '>
                                        (CommandSub
                                          left_token: <Id.Left_DollarParen '$('>
                                          child: 
                                            (command.Simple
                                              blame_tok: <yaml-quote>
                                              more_env: []
                                              words: [
                                                {<yaml-quote>}
                                                {(${ Id.VSub_Name ETCD_QUORUM_READ)}
                                              ]
                                              redirects: []
                                              do_fork: T
                                            )
                                          right: <Id.Eof_RParen _>
                                        )
                                        <'\n'>
                                      ]
                                    )
                                )
                              ]
                              do_fork: T
                            )
                          ]
                          spids: [7318 7334]
                        )
                      ]
                      else_action: []
                      fi_kw: <Id.KW_Fi fi>
                      redirects: []
                    )
                    (command.If
                      if_kw: <Id.KW_If if>
                      arms: [
                        (IfArm
                          keyword: <Id.KW_If if>
                          cond: 
                            (condition.Shell
                              commands: [
                                (command.Sentence
                                  child: 
                                    (command.Simple
                                      blame_tok: <Id.Lit_LBracket '['>
                                      more_env: []
                                      words: [
                                        {<Id.Lit_LBracket '['>}
                                        {<-n>}
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name CLUSTER_SIGNING_DURATION>
                                              var_name: CLUSTER_SIGNING_DURATION
                                              suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                        {<Id.Lit_RBracket ']'>}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  terminator: <Id.Op_Semi _>
                                )
                              ]
                            )
                          then_kw: <Id.KW_Then then>
                          action: [
                            (command.Simple
                              blame_tok: <cat>
                              more_env: []
                              words: [{<cat>}]
                              redirects: [
                                (Redir
                                  op: <Id.Redir_DGreat '>>'>
                                  loc: (redir_loc.Fd fd:1)
                                  arg: {($ Id.VSub_DollarName file)}
                                )
                                (Redir
                                  op: <Id.Redir_DLess '<<'>
                                  loc: (redir_loc.Fd fd:0)
                                  arg: 
                                    (redir_param.HereDoc
                                      here_begin: {<EOF>}
                                      here_end_tok: <Id.Undefined_Tok ''>
                                      stdin_parts: [
                                        <'CLUSTER_SIGNING_DURATION: '>
                                        (CommandSub
                                          left_token: <Id.Left_DollarParen '$('>
                                          child: 
                                            (command.Simple
                                              blame_tok: <yaml-quote>
                                              more_env: []
                                              words: [
                                                {<yaml-quote>}
                                                {(${ Id.VSub_Name CLUSTER_SIGNING_DURATION)}
                                              ]
                                              redirects: []
                                              do_fork: T
                                            )
                                          right: <Id.Eof_RParen _>
                                        )
                                        <'\n'>
                                      ]
                                    )
                                )
                              ]
                              do_fork: T
                            )
                          ]
                          spids: [7360 7376]
                        )
                      ]
                      else_action: []
                      fi_kw: <Id.KW_Fi fi>
                      redirects: []
                    )
                  ]
                  spids: [6532 6551]
                )
              ]
              else_kw: <Id.KW_Else else>
              else_action: [
                (command.Simple
                  blame_tok: <cat>
                  more_env: []
                  words: [{<cat>}]
                  redirects: [
                    (Redir
                      op: <Id.Redir_DGreat '>>'>
                      loc: (redir_loc.Fd fd:1)
                      arg: {($ Id.VSub_DollarName file)}
                    )
                    (Redir
                      op: <Id.Redir_DLess '<<'>
                      loc: (redir_loc.Fd fd:0)
                      arg: 
                        (redir_param.HereDoc
                          here_begin: {<EOF>}
                          here_end_tok: <Id.Undefined_Tok ''>
                          stdin_parts: [
                            <'KUBERNETES_MASTER: '>
                            (CommandSub
                              left_token: <Id.Left_DollarParen '$('>
                              child: 
                                (command.Simple
                                  blame_tok: <yaml-quote>
                                  more_env: []
                                  words: [{<yaml-quote>} {(DQ <false>)}]
                                  redirects: []
                                  do_fork: T
                                )
                              right: <Id.Eof_RParen _>
                            )
                            <'\n'>
                            <'ZONE: '>
                            (CommandSub
                              left_token: <Id.Left_DollarParen '$('>
                              child: 
                                (command.Simple
                                  blame_tok: <yaml-quote>
                                  more_env: []
                                  words: [{<yaml-quote>} {(${ Id.VSub_Name ZONE)}]
                                  redirects: []
                                  do_fork: T
                                )
                              right: <Id.Eof_RParen _>
                            )
                            <'\n'>
                            <'EXTRA_DOCKER_OPTS: '>
                            (CommandSub
                              left_token: <Id.Left_DollarParen '$('>
                              child: 
                                (command.Simple
                                  blame_tok: <yaml-quote>
                                  more_env: []
                                  words: [
                                    {<yaml-quote>}
                                    {
                                      (BracedVarSub
                                        left: <Id.Left_DollarBrace '${'>
                                        token: <Id.VSub_Name EXTRA_DOCKER_OPTS>
                                        var_name: EXTRA_DOCKER_OPTS
                                        suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                        right: <Id.Right_DollarBrace '}'>
                                      )
                                    }
                                  ]
                                  redirects: []
                                  do_fork: T
                                )
                              right: <Id.Eof_RParen _>
                            )
                            <'\n'>
                          ]
                        )
                    )
                  ]
                  do_fork: T
                )
                (command.If
                  if_kw: <Id.KW_If if>
                  arms: [
                    (IfArm
                      keyword: <Id.KW_If if>
                      cond: 
                        (condition.Shell
                          commands: [
                            (command.Sentence
                              child: 
                                (command.Simple
                                  blame_tok: <Id.Lit_LBracket '['>
                                  more_env: []
                                  words: [
                                    {<Id.Lit_LBracket '['>}
                                    {<-n>}
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          left: <Id.Left_DollarBrace '${'>
                                          token: <Id.VSub_Name KUBEPROXY_TEST_ARGS>
                                          var_name: KUBEPROXY_TEST_ARGS
                                          suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                          right: <Id.Right_DollarBrace '}'>
                                        )
                                      )
                                    }
                                    {<Id.Lit_RBracket ']'>}
                                  ]
                                  redirects: []
                                  do_fork: T
                                )
                              terminator: <Id.Op_Semi _>
                            )
                          ]
                        )
                      then_kw: <Id.KW_Then then>
                      action: [
                        (command.Simple
                          blame_tok: <cat>
                          more_env: []
                          words: [{<cat>}]
                          redirects: [
                            (Redir
                              op: <Id.Redir_DGreat '>>'>
                              loc: (redir_loc.Fd fd:1)
                              arg: {($ Id.VSub_DollarName file)}
                            )
                            (Redir
                              op: <Id.Redir_DLess '<<'>
                              loc: (redir_loc.Fd fd:0)
                              arg: 
                                (redir_param.HereDoc
                                  here_begin: {<EOF>}
                                  here_end_tok: <Id.Undefined_Tok ''>
                                  stdin_parts: [
                                    <'KUBEPROXY_TEST_ARGS: '>
                                    (CommandSub
                                      left_token: <Id.Left_DollarParen '$('>
                                      child: 
                                        (command.Simple
                                          blame_tok: <yaml-quote>
                                          more_env: []
                                          words: [
                                            {<yaml-quote>}
                                            {(${ Id.VSub_Name KUBEPROXY_TEST_ARGS)}
                                          ]
                                          redirects: []
                                          do_fork: T
                                        )
                                      right: <Id.Eof_RParen _>
                                    )
                                    <'\n'>
                                  ]
                                )
                            )
                          ]
                          do_fork: T
                        )
                      ]
                      spids: [7449 7465]
                    )
                  ]
                  else_action: []
                  fi_kw: <Id.KW_Fi fi>
                  redirects: []
                )
                (command.If
                  if_kw: <Id.KW_If if>
                  arms: [
                    (IfArm
                      keyword: <Id.KW_If if>
                      cond: 
                        (condition.Shell
                          commands: [
                            (command.Sentence
                              child: 
                                (command.Simple
                                  blame_tok: <Id.Lit_LBracket '['>
                                  more_env: []
                                  words: [
                                    {<Id.Lit_LBracket '['>}
                                    {<-n>}
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          left: <Id.Left_DollarBrace '${'>
                                          token: <Id.VSub_Name KUBEPROXY_TEST_LOG_LEVEL>
                                          var_name: KUBEPROXY_TEST_LOG_LEVEL
                                          suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                          right: <Id.Right_DollarBrace '}'>
                                        )
                                      )
                                    }
                                    {<Id.Lit_RBracket ']'>}
                                  ]
                                  redirects: []
                                  do_fork: T
                                )
                              terminator: <Id.Op_Semi _>
                            )
                          ]
                        )
                      then_kw: <Id.KW_Then then>
                      action: [
                        (command.Simple
                          blame_tok: <cat>
                          more_env: []
                          words: [{<cat>}]
                          redirects: [
                            (Redir
                              op: <Id.Redir_DGreat '>>'>
                              loc: (redir_loc.Fd fd:1)
                              arg: {($ Id.VSub_DollarName file)}
                            )
                            (Redir
                              op: <Id.Redir_DLess '<<'>
                              loc: (redir_loc.Fd fd:0)
                              arg: 
                                (redir_param.HereDoc
                                  here_begin: {<EOF>}
                                  here_end_tok: <Id.Undefined_Tok ''>
                                  stdin_parts: [
                                    <'KUBEPROXY_TEST_LOG_LEVEL: '>
                                    (CommandSub
                                      left_token: <Id.Left_DollarParen '$('>
                                      child: 
                                        (command.Simple
                                          blame_tok: <yaml-quote>
                                          more_env: []
                                          words: [
                                            {<yaml-quote>}
                                            {(${ Id.VSub_Name KUBEPROXY_TEST_LOG_LEVEL)}
                                          ]
                                          redirects: []
                                          do_fork: T
                                        )
                                      right: <Id.Eof_RParen _>
                                    )
                                    <'\n'>
                                  ]
                                )
                            )
                          ]
                          do_fork: T
                        )
                      ]
                      spids: [7491 7507]
                    )
                  ]
                  else_action: []
                  fi_kw: <Id.KW_Fi fi>
                  redirects: []
                )
              ]
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name NODE_LABELS>
                                      var_name: NODE_LABELS
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'NODE_LABELS: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name NODE_LABELS)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [7536 7552]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name EVICTION_HARD>
                                      var_name: EVICTION_HARD
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'EVICTION_HARD: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name EVICTION_HARD)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [7578 7594]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.AndOr
                              children: [
                                (command.DBracket
                                  left: <Id.KW_DLeftBracket '[['>
                                  expr: 
                                    (bool_expr.LogicalAnd
                                      left: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobDEqual
                                          left: {(DQ (${ Id.VSub_Name master))}
                                          right: {(DQ <true>)}
                                        )
                                      right: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobDEqual
                                          left: {(DQ (${ Id.VSub_Name MASTER_OS_DISTRIBUTION))}
                                          right: {(DQ <container-linux>)}
                                        )
                                    )
                                  right: <Id.Lit_DRightBracket ']]'>
                                  redirects: []
                                )
                                (command.DBracket
                                  left: <Id.KW_DLeftBracket '[['>
                                  expr: 
                                    (bool_expr.LogicalAnd
                                      left: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobDEqual
                                          left: {(DQ (${ Id.VSub_Name master))}
                                          right: {(DQ <false>)}
                                        )
                                      right: 
                                        (bool_expr.Binary
                                          op_id: Id.BoolBinary_GlobDEqual
                                          left: {(DQ (${ Id.VSub_Name NODE_OS_DISTRIBUTION))}
                                          right: {(DQ <container-linux>)}
                                        )
                                    )
                                  right: <Id.Lit_DRightBracket ']]'>
                                  redirects: []
                                )
                              ]
                              ops: [<Id.Op_DPipe _>]
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'KUBERNETES_CONTAINER_RUNTIME: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name CONTAINER_RUNTIME>
                                            var_name: CONTAINER_RUNTIME
                                            suffix_op: 
                                              (suffix_op.Unary
                                                op: <Id.VTest_ColonHyphen _>
                                                arg_word: {<rkt>}
                                              )
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'RKT_VERSION: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name RKT_VERSION>
                                            var_name: RKT_VERSION
                                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'RKT_PATH: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name RKT_PATH>
                                            var_name: RKT_PATH
                                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'RKT_STAGE1_IMAGE: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {
                                          (BracedVarSub
                                            left: <Id.Left_DollarBrace '${'>
                                            token: <Id.VSub_Name RKT_STAGE1_IMAGE>
                                            var_name: RKT_STAGE1_IMAGE
                                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                                            right: <Id.Right_DollarBrace '}'>
                                          )
                                        }
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [7620 7687]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Binary
                                  op_id: Id.BoolBinary_GlobDEqual
                                  left: {(DQ (${ Id.VSub_Name ENABLE_CLUSTER_AUTOSCALER))}
                                  right: {(DQ <true>)}
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'ENABLE_CLUSTER_AUTOSCALER: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {(${ Id.VSub_Name ENABLE_CLUSTER_AUTOSCALER)}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'AUTOSCALER_MIG_CONFIG: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name AUTOSCALER_MIG_CONFIG)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                                <'AUTOSCALER_EXPANDER_CONFIG: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {(${ Id.VSub_Name AUTOSCALER_EXPANDER_CONFIG)}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [7749 7768]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Unary
                                  op_id: Id.BoolUnary_n
                                  child: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          left: <Id.Left_DollarBrace '${'>
                                          token: <Id.VSub_Name FEDERATION>
                                          var_name: FEDERATION
                                          suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                          right: <Id.Right_DollarBrace '}'>
                                        )
                                      )
                                    }
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'FEDERATION: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name FEDERATION)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [7817 7833]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name FEDERATION_NAME>
                                      var_name: FEDERATION_NAME
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'FEDERATION_NAME: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name FEDERATION_NAME)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [7859 7875]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name DNS_ZONE_NAME>
                                      var_name: DNS_ZONE_NAME
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'DNS_ZONE_NAME: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [{<yaml-quote>} {(${ Id.VSub_Name DNS_ZONE_NAME)}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [7901 7917]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<-n>}
                                {
                                  (DQ 
                                    (BracedVarSub
                                      left: <Id.Left_DollarBrace '${'>
                                      token: <Id.VSub_Name SCHEDULING_ALGORITHM_PROVIDER>
                                      var_name: SCHEDULING_ALGORITHM_PROVIDER
                                      suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:(rhs_word__Empty))
                                      right: <Id.Right_DollarBrace '}'>
                                    )
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_DGreat '>>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {($ Id.VSub_DollarName file)}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'SCHEDULING_ALGORITHM_PROVIDER: '>
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <yaml-quote>
                                      more_env: []
                                      words: [
                                        {<yaml-quote>}
                                        {(${ Id.VSub_Name SCHEDULING_ALGORITHM_PROVIDER)}
                                      ]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                                <'\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [7943 7959]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <sha1sum-file>
      name: sha1sum-file
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <which>
                              more_env: []
                              words: [{<which>} {<sha1sum>}]
                              redirects: [
                                (Redir
                                  op: <Id.Redir_Great '>'>
                                  loc: (redir_loc.Fd fd:1)
                                  arg: {<'/dev/null'>}
                                )
                                (Redir
                                  op: <Id.Redir_GreatAnd '2>&'>
                                  loc: (redir_loc.Fd fd:2)
                                  arg: {<1>}
                                )
                              ]
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Pipeline
                      children: [
                        (command.Simple
                          blame_tok: <sha1sum>
                          more_env: []
                          words: [{<sha1sum>} {(DQ ($ Id.VSub_Number 1))}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <awk>
                          more_env: []
                          words: [{<awk>} {(SQ <'{ print $1 }'>)}]
                          redirects: []
                          do_fork: T
                        )
                      ]
                      ops: [<Id.Op_Pipe _>]
                    )
                  ]
                  spids: [7996 8009]
                )
              ]
              else_kw: <Id.KW_Else else>
              else_action: [
                (command.Pipeline
                  children: [
                    (command.Simple
                      blame_tok: <shasum>
                      more_env: []
                      words: [{<shasum>} {<-a1>} {(DQ ($ Id.VSub_Number 1))}]
                      redirects: []
                      do_fork: T
                    )
                    (command.Simple
                      blame_tok: <awk>
                      more_env: []
                      words: [{<awk>} {(SQ <'{ print $1 }'>)}]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  ops: [<Id.Op_Pipe _>]
                )
              ]
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <create-certs>
      name: create-certs
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [{<local>} {<-r>} {<Id.Lit_VarLike 'primary_cn='> (DQ (${ Id.VSub_Number 1))}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'octets='> 
                  (ShArrayLiteral
                    left: <Id.Op_LParen _>
                    words: [
                      {
                        (CommandSub
                          left_token: <Id.Left_DollarParen '$('>
                          child: 
                            (command.Pipeline
                              children: [
                                (command.Simple
                                  blame_tok: <echo>
                                  more_env: []
                                  words: [{<echo>} {(DQ (${ Id.VSub_Name SERVICE_CLUSTER_IP_RANGE))}]
                                  redirects: []
                                  do_fork: T
                                )
                                (command.Simple
                                  blame_tok: <sed>
                                  more_env: []
                                  words: [{<sed>} {<-e>} {(SQ <'s|/.*||'>)} {<-e>} {(SQ <'s/\\./ /g'>)}]
                                  redirects: []
                                  do_fork: T
                                )
                              ]
                              ops: [<Id.Op_Pipe _>]
                            )
                          right: <Id.Eof_RParen _>
                        )
                      }
                    ]
                    right: <Id.Right_ShArrayLiteral _>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.DParen
              left: <Id.Op_DLeftParen _>
              child: 
                (arith_expr.BinaryAssign
                  op_id: Id.Arith_PlusEqual
                  left: 
                    (arith_expr.Binary
                      op_id: Id.Arith_LBracket
                      left: ($ Id.Lit_ArithVarLike octets)
                      right: {<Id.Lit_Digits 3>}
                    )
                  right: {<Id.Lit_Digits 1>}
                )
              right: <Id.Op_DRightParen _>
              redirects: []
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<-r>}
                {<Id.Lit_VarLike 'service_ip='> 
                  (CommandSub
                    left_token: <Id.Left_DollarParen '$('>
                    child: 
                      (command.Pipeline
                        children: [
                          (command.Simple
                            blame_tok: <echo>
                            more_env: []
                            words: [
                              {<echo>}
                              {
                                (DQ 
                                  (BracedVarSub
                                    left: <Id.Left_DollarBrace '${'>
                                    token: <Id.VSub_Name octets>
                                    var_name: octets
                                    bracket_op: (bracket_op.WholeArray op_id:Id.Arith_Star)
                                    right: <Id.Right_DollarBrace '}'>
                                  )
                                )
                              }
                            ]
                            redirects: []
                            do_fork: T
                          )
                          (command.Simple
                            blame_tok: <sed>
                            more_env: []
                            words: [{<sed>} {(SQ <'s/ /./g'>)}]
                            redirects: []
                            do_fork: T
                          )
                        ]
                        ops: [<Id.Op_Pipe _>]
                      )
                    right: <Id.Eof_RParen _>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [{<local>} {<Id.Lit_VarLike 'sans='> (DQ )}]
              redirects: []
              do_fork: T
            )
            (command.ForEach
              keyword: <Id.KW_For for>
              iter_names: [extra]
              iterable: (for_iter.Words words:[{($ Id.VSub_At '@')}])
              semi_tok: <Id.Op_Semi _>
              body: 
                (command.DoGroup
                  left: <Id.KW_Do do>
                  children: [
                    (command.If
                      if_kw: <Id.KW_If if>
                      arms: [
                        (IfArm
                          keyword: <Id.KW_If if>
                          cond: 
                            (condition.Shell
                              commands: [
                                (command.Sentence
                                  child: 
                                    (command.DBracket
                                      left: <Id.KW_DLeftBracket '[['>
                                      expr: 
                                        (bool_expr.Unary
                                          op_id: Id.BoolUnary_n
                                          child: {(DQ (${ Id.VSub_Name extra))}
                                        )
                                      right: <Id.Lit_DRightBracket ']]'>
                                      redirects: []
                                    )
                                  terminator: <Id.Op_Semi _>
                                )
                              ]
                            )
                          then_kw: <Id.KW_Then then>
                          action: [
                            (command.ShAssignment
                              left: <Id.Lit_VarLike 'sans='>
                              pairs: [
                                (AssignPair
                                  left: <Id.Lit_VarLike 'sans='>
                                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'sans='> name:sans)
                                  op: assign_op.Equal
                                  rhs: 
                                    {
                                      (DQ (${ Id.VSub_Name sans) <'IP:'> (${ Id.VSub_Name extra) <','>)
                                    }
                                )
                              ]
                              redirects: []
                            )
                          ]
                          spids: [8255 8270]
                        )
                      ]
                      else_action: []
                      fi_kw: <Id.KW_Fi fi>
                      redirects: []
                    )
                  ]
                  right: <Id.KW_Done done>
                )
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'sans='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'sans='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'sans='> name:sans)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (DQ (${ Id.VSub_Name sans) <'IP:'> (${ Id.VSub_Name service_ip) 
                        <
',DNS:kubernetes,DNS:kubernetes.default,DNS:kubernetes.default.svc,DNS:kubernetes.default.svc.'
                        > (${ Id.VSub_Name DNS_DOMAIN) <',DNS:'> (${ Id.VSub_Name MASTER_NAME)
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.Simple
              blame_tok: <echo>
              more_env: []
              words: [{<echo>} {(DQ <'Generating certs for alternate-names: '> (${ Id.VSub_Name sans))}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <setup-easyrsa>
              more_env: []
              words: [{<setup-easyrsa>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <generate-certs>
              more_env: [
                (EnvPair
                  left: <Id.Lit_VarLike 'PRIMARY_CN='>
                  name: PRIMARY_CN
                  val: {(DQ (${ Id.VSub_Name primary_cn))}
                )
                (EnvPair
                  left: <Id.Lit_VarLike 'SANS='>
                  name: SANS
                  val: {(DQ (${ Id.VSub_Name sans))}
                )
              ]
              words: [{<generate-certs>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <generate-aggregator-certs>
              more_env: [
                (EnvPair
                  left: <Id.Lit_VarLike 'AGGREGATOR_PRIMARY_CN='>
                  name: AGGREGATOR_PRIMARY_CN
                  val: {(DQ (${ Id.VSub_Name primary_cn))}
                )
                (EnvPair
                  left: <Id.Lit_VarLike 'AGGREGATOR_SANS='>
                  name: AGGREGATOR_SANS
                  val: {(DQ (${ Id.VSub_Name sans))}
                )
              ]
              words: [{<generate-aggregator-certs>}]
              redirects: []
              do_fork: T
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'CERT_DIR='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'CERT_DIR='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'CERT_DIR='> name:CERT_DIR)
                  op: assign_op.Equal
                  rhs: {(DQ (${ Id.VSub_Name KUBE_TEMP) <'/easy-rsa-master/easyrsa3'>)}
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'CA_KEY_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'CA_KEY_BASE64='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'CA_KEY_BASE64='> name:CA_KEY_BASE64)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Simple
                                blame_tok: <cat>
                                more_env: []
                                words: [
                                  {<cat>}
                                  {(DQ (${ Id.VSub_Name CERT_DIR) <'/pki/private/ca.key'>)}
                                ]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <base64>
                                more_env: []
                                words: [{<base64>}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <tr>
                                more_env: []
                                words: [{<tr>} {<-d>} {(SQ <'\\r\\n'>)}]
                                redirects: []
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'CA_CERT_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'CA_CERT_BASE64='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'CA_CERT_BASE64='> name:CA_CERT_BASE64)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Simple
                                blame_tok: <cat>
                                more_env: []
                                words: [{<cat>} {(DQ (${ Id.VSub_Name CERT_DIR) <'/pki/ca.crt'>)}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <base64>
                                more_env: []
                                words: [{<base64>}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <tr>
                                more_env: []
                                words: [{<tr>} {<-d>} {(SQ <'\\r\\n'>)}]
                                redirects: []
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'MASTER_CERT_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'MASTER_CERT_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'MASTER_CERT_BASE64='>
                      name: MASTER_CERT_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Simple
                                blame_tok: <cat>
                                more_env: []
                                words: [
                                  {<cat>}
                                  {
                                    (DQ (${ Id.VSub_Name CERT_DIR) <'/pki/issued/'> 
                                      (${ Id.VSub_Name MASTER_NAME) <.crt>
                                    )
                                  }
                                ]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <base64>
                                more_env: []
                                words: [{<base64>}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <tr>
                                more_env: []
                                words: [{<tr>} {<-d>} {(SQ <'\\r\\n'>)}]
                                redirects: []
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'MASTER_KEY_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'MASTER_KEY_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'MASTER_KEY_BASE64='>
                      name: MASTER_KEY_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Simple
                                blame_tok: <cat>
                                more_env: []
                                words: [
                                  {<cat>}
                                  {
                                    (DQ (${ Id.VSub_Name CERT_DIR) <'/pki/private/'> 
                                      (${ Id.VSub_Name MASTER_NAME) <.key>
                                    )
                                  }
                                ]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <base64>
                                more_env: []
                                words: [{<base64>}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <tr>
                                more_env: []
                                words: [{<tr>} {<-d>} {(SQ <'\\r\\n'>)}]
                                redirects: []
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBELET_CERT_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBELET_CERT_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'KUBELET_CERT_BASE64='>
                      name: KUBELET_CERT_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Simple
                                blame_tok: <cat>
                                more_env: []
                                words: [
                                  {<cat>}
                                  {(DQ (${ Id.VSub_Name CERT_DIR) <'/pki/issued/kubelet.crt'>)}
                                ]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <base64>
                                more_env: []
                                words: [{<base64>}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <tr>
                                more_env: []
                                words: [{<tr>} {<-d>} {(SQ <'\\r\\n'>)}]
                                redirects: []
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBELET_KEY_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBELET_KEY_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'KUBELET_KEY_BASE64='>
                      name: KUBELET_KEY_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Simple
                                blame_tok: <cat>
                                more_env: []
                                words: [
                                  {<cat>}
                                  {(DQ (${ Id.VSub_Name CERT_DIR) <'/pki/private/kubelet.key'>)}
                                ]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <base64>
                                more_env: []
                                words: [{<base64>}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <tr>
                                more_env: []
                                words: [{<tr>} {<-d>} {(SQ <'\\r\\n'>)}]
                                redirects: []
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBECFG_CERT_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBECFG_CERT_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'KUBECFG_CERT_BASE64='>
                      name: KUBECFG_CERT_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Simple
                                blame_tok: <cat>
                                more_env: []
                                words: [
                                  {<cat>}
                                  {(DQ (${ Id.VSub_Name CERT_DIR) <'/pki/issued/kubecfg.crt'>)}
                                ]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <base64>
                                more_env: []
                                words: [{<base64>}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <tr>
                                more_env: []
                                words: [{<tr>} {<-d>} {(SQ <'\\r\\n'>)}]
                                redirects: []
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBECFG_KEY_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBECFG_KEY_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'KUBECFG_KEY_BASE64='>
                      name: KUBECFG_KEY_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Simple
                                blame_tok: <cat>
                                more_env: []
                                words: [
                                  {<cat>}
                                  {(DQ (${ Id.VSub_Name CERT_DIR) <'/pki/private/kubecfg.key'>)}
                                ]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <base64>
                                more_env: []
                                words: [{<base64>}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <tr>
                                more_env: []
                                words: [{<tr>} {<-d>} {(SQ <'\\r\\n'>)}]
                                redirects: []
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBEAPISERVER_CERT_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBEAPISERVER_CERT_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'KUBEAPISERVER_CERT_BASE64='>
                      name: KUBEAPISERVER_CERT_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Simple
                                blame_tok: <cat>
                                more_env: []
                                words: [
                                  {<cat>}
                                  {(DQ (${ Id.VSub_Name CERT_DIR) <'/pki/issued/kube-apiserver.crt'>)}
                                ]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <base64>
                                more_env: []
                                words: [{<base64>}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <tr>
                                more_env: []
                                words: [{<tr>} {<-d>} {(SQ <'\\r\\n'>)}]
                                redirects: []
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBEAPISERVER_KEY_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBEAPISERVER_KEY_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'KUBEAPISERVER_KEY_BASE64='>
                      name: KUBEAPISERVER_KEY_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Simple
                                blame_tok: <cat>
                                more_env: []
                                words: [
                                  {<cat>}
                                  {
                                    (DQ (${ Id.VSub_Name CERT_DIR) <'/pki/private/kube-apiserver.key'>)
                                  }
                                ]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <base64>
                                more_env: []
                                words: [{<base64>}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <tr>
                                more_env: []
                                words: [{<tr>} {<-d>} {(SQ <'\\r\\n'>)}]
                                redirects: []
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'AGGREGATOR_CERT_DIR='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'AGGREGATOR_CERT_DIR='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'AGGREGATOR_CERT_DIR='>
                      name: AGGREGATOR_CERT_DIR
                    )
                  op: assign_op.Equal
                  rhs: {(DQ (${ Id.VSub_Name KUBE_TEMP) <'/easy-rsa-master/aggregator'>)}
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'AGGREGATOR_CA_KEY_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'AGGREGATOR_CA_KEY_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'AGGREGATOR_CA_KEY_BASE64='>
                      name: AGGREGATOR_CA_KEY_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Simple
                                blame_tok: <cat>
                                more_env: []
                                words: [
                                  {<cat>}
                                  {(DQ (${ Id.VSub_Name AGGREGATOR_CERT_DIR) <'/pki/private/ca.key'>)}
                                ]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <base64>
                                more_env: []
                                words: [{<base64>}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <tr>
                                more_env: []
                                words: [{<tr>} {<-d>} {(SQ <'\\r\\n'>)}]
                                redirects: []
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'REQUESTHEADER_CA_CERT_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'REQUESTHEADER_CA_CERT_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'REQUESTHEADER_CA_CERT_BASE64='>
                      name: REQUESTHEADER_CA_CERT_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Simple
                                blame_tok: <cat>
                                more_env: []
                                words: [
                                  {<cat>}
                                  {(DQ (${ Id.VSub_Name AGGREGATOR_CERT_DIR) <'/pki/ca.crt'>)}
                                ]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <base64>
                                more_env: []
                                words: [{<base64>}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <tr>
                                more_env: []
                                words: [{<tr>} {<-d>} {(SQ <'\\r\\n'>)}]
                                redirects: []
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'PROXY_CLIENT_CERT_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'PROXY_CLIENT_CERT_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'PROXY_CLIENT_CERT_BASE64='>
                      name: PROXY_CLIENT_CERT_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Simple
                                blame_tok: <cat>
                                more_env: []
                                words: [
                                  {<cat>}
                                  {
                                    (DQ (${ Id.VSub_Name AGGREGATOR_CERT_DIR) 
                                      <'/pki/issued/proxy-client.crt'>
                                    )
                                  }
                                ]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <base64>
                                more_env: []
                                words: [{<base64>}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <tr>
                                more_env: []
                                words: [{<tr>} {<-d>} {(SQ <'\\r\\n'>)}]
                                redirects: []
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'PROXY_CLIENT_KEY_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'PROXY_CLIENT_KEY_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'PROXY_CLIENT_KEY_BASE64='>
                      name: PROXY_CLIENT_KEY_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Simple
                                blame_tok: <cat>
                                more_env: []
                                words: [
                                  {<cat>}
                                  {
                                    (DQ (${ Id.VSub_Name AGGREGATOR_CERT_DIR) 
                                      <'/pki/private/proxy-client.key'>
                                    )
                                  }
                                ]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <base64>
                                more_env: []
                                words: [{<base64>}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <tr>
                                more_env: []
                                words: [{<tr>} {<-d>} {(SQ <'\\r\\n'>)}]
                                redirects: []
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <setup-easyrsa>
      name: setup-easyrsa
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<-r>}
                {<Id.Lit_VarLike 'cert_create_debug_output='> 
                  (CommandSub
                    left_token: <Id.Left_DollarParen '$('>
                    child: 
                      (command.Simple
                        blame_tok: <mktemp>
                        more_env: []
                        words: [
                          {<mktemp>}
                          {(DQ (${ Id.VSub_Name KUBE_TEMP) <'/cert_create_debug_output.XXX'>)}
                        ]
                        redirects: []
                        do_fork: T
                      )
                    right: <Id.Eof_RParen _>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.AndOr
              children: [
                (command.Subshell
                  left: <Id.Op_LParen _>
                  child: 
                    (command.CommandList
                      children: [
                        (command.Simple
                          blame_tok: <set>
                          more_env: []
                          words: [{<set>} {<-x>}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <cd>
                          more_env: []
                          words: [{<cd>} {(DQ (${ Id.VSub_Name KUBE_TEMP))}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <curl>
                          more_env: []
                          words: [
                            {<curl>}
                            {<-L>}
                            {<-O>}
                            {<--connect-timeout>}
                            {<20>}
                            {<--retry>}
                            {<6>}
                            {<--retry-delay>}
                            {<2>}
                            {<https> <Id.Lit_Colon ':'> 
                              <
'//storage.googleapis.com/kubernetes-release/easy-rsa/easy-rsa.tar.gz'
                              >
                            }
                          ]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <tar>
                          more_env: []
                          words: [{<tar>} {<xzf>} {<easy-rsa.tar.gz>}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <mkdir>
                          more_env: []
                          words: [{<mkdir>} {<'easy-rsa-master/kubelet'>}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <cp>
                          more_env: []
                          words: [
                            {<cp>}
                            {<-r>}
                            {<'easy-rsa-master/easyrsa3/'> <Id.Lit_Star '*'>}
                            {<'easy-rsa-master/kubelet'>}
                          ]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <mkdir>
                          more_env: []
                          words: [{<mkdir>} {<'easy-rsa-master/aggregator'>}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <cp>
                          more_env: []
                          words: [
                            {<cp>}
                            {<-r>}
                            {<'easy-rsa-master/easyrsa3/'> <Id.Lit_Star '*'>}
                            {<'easy-rsa-master/aggregator'>}
                          ]
                          redirects: []
                          do_fork: T
                        )
                      ]
                    )
                  right: <Id.Right_Subshell _>
                  redirects: [
                    (Redir
                      op: <Id.Redir_AndGreat '&>'>
                      loc: (redir_loc.Fd fd:1)
                      arg: {(${ Id.VSub_Name cert_create_debug_output)}
                    )
                  ]
                )
                (BraceGroup
                  left: <Id.Lit_LBrace '{'>
                  children: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>} {(DQ (${ Id.VSub_Name cert_create_debug_output))}]
                      redirects: [(Redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})]
                      do_fork: T
                    )
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [{<echo>} {(DQ <'=== Failed to setup easy-rsa: Aborting ==='>)}]
                      redirects: [(Redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})]
                      do_fork: T
                    )
                    (command.ControlFlow
                      keyword: <Id.ControlFlow_Exit exit>
                      arg_word: {<2>}
                    )
                  ]
                  redirects: []
                  right: <Id.Lit_RBrace '}'>
                )
              ]
              ops: [<Id.Op_DPipe _>]
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <generate-certs>
      name: generate-certs
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<-r>}
                {<Id.Lit_VarLike 'cert_create_debug_output='> 
                  (CommandSub
                    left_token: <Id.Left_DollarParen '$('>
                    child: 
                      (command.Simple
                        blame_tok: <mktemp>
                        more_env: []
                        words: [
                          {<mktemp>}
                          {(DQ (${ Id.VSub_Name KUBE_TEMP) <'/cert_create_debug_output.XXX'>)}
                        ]
                        redirects: []
                        do_fork: T
                      )
                    right: <Id.Eof_RParen _>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.AndOr
              children: [
                (command.Subshell
                  left: <Id.Op_LParen _>
                  child: 
                    (command.CommandList
                      children: [
                        (command.Simple
                          blame_tok: <set>
                          more_env: []
                          words: [{<set>} {<-x>}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <cd>
                          more_env: []
                          words: [
                            {<cd>}
                            {(DQ (${ Id.VSub_Name KUBE_TEMP) <'/easy-rsa-master/easyrsa3'>)}
                          ]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <'./easyrsa'>
                          more_env: []
                          words: [{<'./easyrsa'>} {<init-pki>}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <'./easyrsa'>
                          more_env: []
                          words: [
                            {<'./easyrsa'>}
                            {<--batch>}
                            {
                              (DQ <'--req-cn='> (${ Id.VSub_Name PRIMARY_CN) <'@'> 
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <date>
                                      more_env: []
                                      words: [{<date>} {<Id.Lit_Other '+'> <Id.Lit_Other '%'> <s>}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                              )
                            }
                            {<build-ca>}
                            {<nopass>}
                          ]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <'./easyrsa'>
                          more_env: []
                          words: [
                            {<'./easyrsa'>}
                            {<--subject-alt-name> <Id.Lit_Equals '='> (DQ (${ Id.VSub_Name SANS))}
                            {<build-server-full>}
                            {(DQ (${ Id.VSub_Name MASTER_NAME))}
                            {<nopass>}
                          ]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <'./easyrsa'>
                          more_env: []
                          words: [{<'./easyrsa'>} {<build-client-full>} {<kube-apiserver>} {<nopass>}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <kube>
                          more_env: []
                          words: [
                            {<kube> <Id.Lit_Colon ':'> <Id.Lit_Colon ':'> <util> <Id.Lit_Colon ':'> 
                              <Id.Lit_Colon ':'> <ensure-cfssl>
                            }
                            {(DQ (${ Id.VSub_Name KUBE_TEMP) <'/cfssl'>)}
                          ]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <echo>
                          more_env: []
                          words: [
                            {<echo>}
                            {
                              (SQ 
                                <
'{"signing":{"default":{"expiry":"43800h","usages":["signing","key encipherment","client auth"]}}}'
                                >
                              )
                            }
                          ]
                          redirects: [
                            (Redir
                              op: <Id.Redir_Great '>'>
                              loc: (redir_loc.Fd fd:1)
                              arg: {(DQ <ca-config.json>)}
                            )
                          ]
                          do_fork: T
                        )
                        (command.Pipeline
                          children: [
                            (command.Simple
                              blame_tok: <echo>
                              more_env: []
                              words: [
                                {<echo>}
                                {
                                  (SQ 
                                    <
'{"CN":"kubelet","names":[{"O":"system:nodes"}],"hosts":[""],"key":{"algo":"rsa","size":2048}}'
                                    >
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                            (command.Simple
                              blame_tok: <Id.Left_DoubleQuote '"'>
                              more_env: []
                              words: [
                                {(DQ (${ Id.VSub_Name CFSSL_BIN))}
                                {<gencert>}
                                {<-ca> <Id.Lit_Equals '='> <'pki/ca.crt'>}
                                {<-ca-key> <Id.Lit_Equals '='> <'pki/private/ca.key'>}
                                {<-config> <Id.Lit_Equals '='> <ca-config.json>}
                                {<->}
                              ]
                              redirects: []
                              do_fork: T
                            )
                            (command.Simple
                              blame_tok: <Id.Left_DoubleQuote '"'>
                              more_env: []
                              words: [{(DQ (${ Id.VSub_Name CFSSLJSON_BIN))} {<-bare>} {<kubelet>}]
                              redirects: []
                              do_fork: T
                            )
                          ]
                          ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                        )
                        (command.Simple
                          blame_tok: <mv>
                          more_env: []
                          words: [{<mv>} {(DQ <kubelet-key.pem>)} {(DQ <'pki/private/kubelet.key'>)}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <mv>
                          more_env: []
                          words: [{<mv>} {(DQ <kubelet.pem>)} {(DQ <'pki/issued/kubelet.crt'>)}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <rm>
                          more_env: []
                          words: [{<rm>} {<-f>} {(DQ <kubelet.csr>)}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <'./easyrsa'>
                          more_env: []
                          words: [
                            {<'./easyrsa'>}
                            {<--dn-mode> <Id.Lit_Equals '='> <org>}
                            {<--req-cn> <Id.Lit_Equals '='> <kubecfg>}
                            {<--req-org> <Id.Lit_Equals '='> <system> <Id.Lit_Colon ':'> <masters>}
                            {<--req-c> <Id.Lit_Equals '='>}
                            {<--req-st> <Id.Lit_Equals '='>}
                            {<--req-city> <Id.Lit_Equals '='>}
                            {<--req-email> <Id.Lit_Equals '='>}
                            {<--req-ou> <Id.Lit_Equals '='>}
                            {<build-client-full>}
                            {<kubecfg>}
                            {<nopass>}
                          ]
                          redirects: []
                          do_fork: T
                        )
                      ]
                    )
                  right: <Id.Right_Subshell _>
                  redirects: [
                    (Redir
                      op: <Id.Redir_AndGreat '&>'>
                      loc: (redir_loc.Fd fd:1)
                      arg: {(${ Id.VSub_Name cert_create_debug_output)}
                    )
                  ]
                )
                (BraceGroup
                  left: <Id.Lit_LBrace '{'>
                  children: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>} {(DQ (${ Id.VSub_Name cert_create_debug_output))}]
                      redirects: [(Redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})]
                      do_fork: T
                    )
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [
                        {<echo>}
                        {(DQ <'=== Failed to generate master certificates: Aborting ==='>)}
                      ]
                      redirects: [(Redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})]
                      do_fork: T
                    )
                    (command.ControlFlow
                      keyword: <Id.ControlFlow_Exit exit>
                      arg_word: {<2>}
                    )
                  ]
                  redirects: []
                  right: <Id.Lit_RBrace '}'>
                )
              ]
              ops: [<Id.Op_DPipe _>]
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <generate-aggregator-certs>
      name: generate-aggregator-certs
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<-r>}
                {<Id.Lit_VarLike 'cert_create_debug_output='> 
                  (CommandSub
                    left_token: <Id.Left_DollarParen '$('>
                    child: 
                      (command.Simple
                        blame_tok: <mktemp>
                        more_env: []
                        words: [
                          {<mktemp>}
                          {(DQ (${ Id.VSub_Name KUBE_TEMP) <'/cert_create_debug_output.XXX'>)}
                        ]
                        redirects: []
                        do_fork: T
                      )
                    right: <Id.Eof_RParen _>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.AndOr
              children: [
                (command.Subshell
                  left: <Id.Op_LParen _>
                  child: 
                    (command.CommandList
                      children: [
                        (command.Simple
                          blame_tok: <set>
                          more_env: []
                          words: [{<set>} {<-x>}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <cd>
                          more_env: []
                          words: [
                            {<cd>}
                            {(DQ (${ Id.VSub_Name KUBE_TEMP) <'/easy-rsa-master/aggregator'>)}
                          ]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <'./easyrsa'>
                          more_env: []
                          words: [{<'./easyrsa'>} {<init-pki>}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <'./easyrsa'>
                          more_env: []
                          words: [
                            {<'./easyrsa'>}
                            {<--batch>}
                            {
                              (DQ <'--req-cn='> (${ Id.VSub_Name AGGREGATOR_PRIMARY_CN) <'@'> 
                                (CommandSub
                                  left_token: <Id.Left_DollarParen '$('>
                                  child: 
                                    (command.Simple
                                      blame_tok: <date>
                                      more_env: []
                                      words: [{<date>} {<Id.Lit_Other '+'> <Id.Lit_Other '%'> <s>}]
                                      redirects: []
                                      do_fork: T
                                    )
                                  right: <Id.Eof_RParen _>
                                )
                              )
                            }
                            {<build-ca>}
                            {<nopass>}
                          ]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <'./easyrsa'>
                          more_env: []
                          words: [
                            {<'./easyrsa'>}
                            {<--subject-alt-name> <Id.Lit_Equals '='> 
                              (DQ (${ Id.VSub_Name AGGREGATOR_SANS))
                            }
                            {<build-server-full>}
                            {(DQ (${ Id.VSub_Name AGGREGATOR_MASTER_NAME))}
                            {<nopass>}
                          ]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <'./easyrsa'>
                          more_env: []
                          words: [
                            {<'./easyrsa'>}
                            {<build-client-full>}
                            {<aggregator-apiserver>}
                            {<nopass>}
                          ]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <kube>
                          more_env: []
                          words: [
                            {<kube> <Id.Lit_Colon ':'> <Id.Lit_Colon ':'> <util> <Id.Lit_Colon ':'> 
                              <Id.Lit_Colon ':'> <ensure-cfssl>
                            }
                            {(DQ (${ Id.VSub_Name KUBE_TEMP) <'/cfssl'>)}
                          ]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <echo>
                          more_env: []
                          words: [
                            {<echo>}
                            {
                              (SQ 
                                <
'{"signing":{"default":{"expiry":"43800h","usages":["signing","key encipherment","client auth"]}}}'
                                >
                              )
                            }
                          ]
                          redirects: [
                            (Redir
                              op: <Id.Redir_Great '>'>
                              loc: (redir_loc.Fd fd:1)
                              arg: {(DQ <ca-config.json>)}
                            )
                          ]
                          do_fork: T
                        )
                        (command.Pipeline
                          children: [
                            (command.Simple
                              blame_tok: <echo>
                              more_env: []
                              words: [
                                {<echo>}
                                {
                                  (SQ 
                                    <
'{"CN":"aggregator","hosts":[""],"key":{"algo":"rsa","size":2048}}'
                                    >
                                  )
                                }
                              ]
                              redirects: []
                              do_fork: T
                            )
                            (command.Simple
                              blame_tok: <Id.Left_DoubleQuote '"'>
                              more_env: []
                              words: [
                                {(DQ (${ Id.VSub_Name CFSSL_BIN))}
                                {<gencert>}
                                {<-ca> <Id.Lit_Equals '='> <'pki/ca.crt'>}
                                {<-ca-key> <Id.Lit_Equals '='> <'pki/private/ca.key'>}
                                {<-config> <Id.Lit_Equals '='> <ca-config.json>}
                                {<->}
                              ]
                              redirects: []
                              do_fork: T
                            )
                            (command.Simple
                              blame_tok: <Id.Left_DoubleQuote '"'>
                              more_env: []
                              words: [{(DQ (${ Id.VSub_Name CFSSLJSON_BIN))} {<-bare>} {<proxy-client>}]
                              redirects: []
                              do_fork: T
                            )
                          ]
                          ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                        )
                        (command.Simple
                          blame_tok: <mv>
                          more_env: []
                          words: [
                            {<mv>}
                            {(DQ <proxy-client-key.pem>)}
                            {(DQ <'pki/private/proxy-client.key'>)}
                          ]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <mv>
                          more_env: []
                          words: [{<mv>} {(DQ <proxy-client.pem>)} {(DQ <'pki/issued/proxy-client.crt'>)}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <rm>
                          more_env: []
                          words: [{<rm>} {<-f>} {(DQ <proxy-client.csr>)}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <'./easyrsa'>
                          more_env: []
                          words: [
                            {<'./easyrsa'>}
                            {<--dn-mode> <Id.Lit_Equals '='> <org>}
                            {<--req-cn> <Id.Lit_Equals '='> <proxy-clientcfg>}
                            {<--req-org> <Id.Lit_Equals '='> <system> <Id.Lit_Colon ':'> <aggregator>}
                            {<--req-c> <Id.Lit_Equals '='>}
                            {<--req-st> <Id.Lit_Equals '='>}
                            {<--req-city> <Id.Lit_Equals '='>}
                            {<--req-email> <Id.Lit_Equals '='>}
                            {<--req-ou> <Id.Lit_Equals '='>}
                            {<build-client-full>}
                            {<proxy-clientcfg>}
                            {<nopass>}
                          ]
                          redirects: []
                          do_fork: T
                        )
                      ]
                    )
                  right: <Id.Right_Subshell _>
                  redirects: [
                    (Redir
                      op: <Id.Redir_AndGreat '&>'>
                      loc: (redir_loc.Fd fd:1)
                      arg: {(${ Id.VSub_Name cert_create_debug_output)}
                    )
                  ]
                )
                (BraceGroup
                  left: <Id.Lit_LBrace '{'>
                  children: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>} {(DQ (${ Id.VSub_Name cert_create_debug_output))}]
                      redirects: [(Redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})]
                      do_fork: T
                    )
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [
                        {<echo>}
                        {(DQ <'=== Failed to generate aggregator certificates: Aborting ==='>)}
                      ]
                      redirects: [(Redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})]
                      do_fork: T
                    )
                    (command.ControlFlow
                      keyword: <Id.ControlFlow_Exit exit>
                      arg_word: {<2>}
                    )
                  ]
                  redirects: []
                  right: <Id.Lit_RBrace '}'>
                )
              ]
              ops: [<Id.Op_DPipe _>]
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <generate-etcd-cert>
      name: generate-etcd-cert
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [{<local>} {<Id.Lit_VarLike 'cert_dir='> (${ Id.VSub_Number 1)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [{<local>} {<Id.Lit_VarLike 'member_ip='> (${ Id.VSub_Number 2)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [{<local>} {<Id.Lit_VarLike 'type_cert='> (${ Id.VSub_Number 3)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'prefix='> 
                  (BracedVarSub
                    left: <Id.Left_DollarBrace '${'>
                    token: <Id.VSub_Number 4>
                    var_name: 4
                    suffix_op: 
                      (suffix_op.Unary
                        op: <Id.VTest_ColonHyphen _>
                        arg_word: {(DQ (${ Id.VSub_Name type_cert))}
                      )
                    right: <Id.Right_DollarBrace '}'>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'GEN_ETCD_CA_CERT='> 
                  (BracedVarSub
                    left: <Id.Left_DollarBrace '${'>
                    token: <Id.VSub_Name GEN_ETCD_CA_CERT>
                    var_name: GEN_ETCD_CA_CERT
                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                    right: <Id.Right_DollarBrace '}'>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'GEN_ETCD_CA_KEY='> 
                  (BracedVarSub
                    left: <Id.Left_DollarBrace '${'>
                    token: <Id.VSub_Name GEN_ETCD_CA_KEY>
                    var_name: GEN_ETCD_CA_KEY
                    suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                    right: <Id.Right_DollarBrace '}'>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <mkdir>
              more_env: []
              words: [{<mkdir>} {<-p>} {(DQ (${ Id.VSub_Name cert_dir))}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <pushd>
              more_env: []
              words: [{<pushd>} {(DQ (${ Id.VSub_Name cert_dir))}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <kube>
              more_env: []
              words: [
                {<kube> <Id.Lit_Colon ':'> <Id.Lit_Colon ':'> <util> <Id.Lit_Colon ':'> 
                  <Id.Lit_Colon ':'> <ensure-cfssl>
                }
                {<.>}
              ]
              redirects: []
              do_fork: T
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<Id.KW_Bang '!'>}
                                {<-r>}
                                {(DQ <ca-config.json>)}
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_Great '>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {<ca-config.json>}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'{\n'>
                                <'    '>
                                <Id.Right_DoubleQuote '"'>
                                <signing>
                                <Id.Right_DoubleQuote '"'>
                                <': {\n'>
                                <'        '>
                                <Id.Right_DoubleQuote '"'>
                                <default>
                                <Id.Right_DoubleQuote '"'>
                                <': {\n'>
                                <'            '>
                                <Id.Right_DoubleQuote '"'>
                                <expiry>
                                <Id.Right_DoubleQuote '"'>
                                <': '>
                                <Id.Right_DoubleQuote '"'>
                                <43800h>
                                <Id.Right_DoubleQuote '"'>
                                <'\n'>
                                <'        },\n'>
                                <'        '>
                                <Id.Right_DoubleQuote '"'>
                                <profiles>
                                <Id.Right_DoubleQuote '"'>
                                <': {\n'>
                                <'            '>
                                <Id.Right_DoubleQuote '"'>
                                <server>
                                <Id.Right_DoubleQuote '"'>
                                <': {\n'>
                                <'                '>
                                <Id.Right_DoubleQuote '"'>
                                <expiry>
                                <Id.Right_DoubleQuote '"'>
                                <': '>
                                <Id.Right_DoubleQuote '"'>
                                <43800h>
                                <Id.Right_DoubleQuote '"'>
                                <',\n'>
                                <'                '>
                                <Id.Right_DoubleQuote '"'>
                                <usages>
                                <Id.Right_DoubleQuote '"'>
                                <': [\n'>
                                <'                    '>
                                <Id.Right_DoubleQuote '"'>
                                <signing>
                                <Id.Right_DoubleQuote '"'>
                                <',\n'>
                                <'                    '>
                                <Id.Right_DoubleQuote '"'>
                                <'key encipherment'>
                                <Id.Right_DoubleQuote '"'>
                                <',\n'>
                                <'                    '>
                                <Id.Right_DoubleQuote '"'>
                                <'server auth'>
                                <Id.Right_DoubleQuote '"'>
                                <'\n'>
                                <'                ]\n'>
                                <'            },\n'>
                                <'            '>
                                <Id.Right_DoubleQuote '"'>
                                <client>
                                <Id.Right_DoubleQuote '"'>
                                <': {\n'>
                                <'                '>
                                <Id.Right_DoubleQuote '"'>
                                <expiry>
                                <Id.Right_DoubleQuote '"'>
                                <': '>
                                <Id.Right_DoubleQuote '"'>
                                <43800h>
                                <Id.Right_DoubleQuote '"'>
                                <',\n'>
                                <'                '>
                                <Id.Right_DoubleQuote '"'>
                                <usages>
                                <Id.Right_DoubleQuote '"'>
                                <': [\n'>
                                <'                    '>
                                <Id.Right_DoubleQuote '"'>
                                <signing>
                                <Id.Right_DoubleQuote '"'>
                                <',\n'>
                                <'                    '>
                                <Id.Right_DoubleQuote '"'>
                                <'key encipherment'>
                                <Id.Right_DoubleQuote '"'>
                                <',\n'>
                                <'                    '>
                                <Id.Right_DoubleQuote '"'>
                                <'client auth'>
                                <Id.Right_DoubleQuote '"'>
                                <'\n'>
                                <'                ]\n'>
                                <'            },\n'>
                                <'            '>
                                <Id.Right_DoubleQuote '"'>
                                <peer>
                                <Id.Right_DoubleQuote '"'>
                                <': {\n'>
                                <'                '>
                                <Id.Right_DoubleQuote '"'>
                                <expiry>
                                <Id.Right_DoubleQuote '"'>
                                <': '>
                                <Id.Right_DoubleQuote '"'>
                                <43800h>
                                <Id.Right_DoubleQuote '"'>
                                <',\n'>
                                <'                '>
                                <Id.Right_DoubleQuote '"'>
                                <usages>
                                <Id.Right_DoubleQuote '"'>
                                <': [\n'>
                                <'                    '>
                                <Id.Right_DoubleQuote '"'>
                                <signing>
                                <Id.Right_DoubleQuote '"'>
                                <',\n'>
                                <'                    '>
                                <Id.Right_DoubleQuote '"'>
                                <'key encipherment'>
                                <Id.Right_DoubleQuote '"'>
                                <',\n'>
                                <'                    '>
                                <Id.Right_DoubleQuote '"'>
                                <'server auth'>
                                <Id.Right_DoubleQuote '"'>
                                <',\n'>
                                <'                    '>
                                <Id.Right_DoubleQuote '"'>
                                <'client auth'>
                                <Id.Right_DoubleQuote '"'>
                                <'\n'>
                                <'                ]\n'>
                                <'            }\n'>
                                <'        }\n'>
                                <'    }\n'>
                                <'}\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [9782 9797]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<Id.KW_Bang '!'>}
                                {<-r>}
                                {(DQ <ca-csr.json>)}
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <cat>
                      more_env: []
                      words: [{<cat>}]
                      redirects: [
                        (Redir
                          op: <Id.Redir_Great '>'>
                          loc: (redir_loc.Fd fd:1)
                          arg: {<ca-csr.json>}
                        )
                        (Redir
                          op: <Id.Redir_DLess '<<'>
                          loc: (redir_loc.Fd fd:0)
                          arg: 
                            (redir_param.HereDoc
                              here_begin: {<EOF>}
                              here_end_tok: <Id.Undefined_Tok ''>
                              stdin_parts: [
                                <'{\n'>
                                <'    '>
                                <Id.Right_DoubleQuote '"'>
                                <CN>
                                <Id.Right_DoubleQuote '"'>
                                <': '>
                                <Id.Right_DoubleQuote '"'>
                                <Kubernetes>
                                <Id.Right_DoubleQuote '"'>
                                <',\n'>
                                <'    '>
                                <Id.Right_DoubleQuote '"'>
                                <key>
                                <Id.Right_DoubleQuote '"'>
                                <': {\n'>
                                <'        '>
                                <Id.Right_DoubleQuote '"'>
                                <algo>
                                <Id.Right_DoubleQuote '"'>
                                <': '>
                                <Id.Right_DoubleQuote '"'>
                                <ecdsa>
                                <Id.Right_DoubleQuote '"'>
                                <',\n'>
                                <'        '>
                                <Id.Right_DoubleQuote '"'>
                                <size>
                                <Id.Right_DoubleQuote '"'>
                                <': 256\n'>
                                <'    },\n'>
                                <'    '>
                                <Id.Right_DoubleQuote '"'>
                                <names>
                                <Id.Right_DoubleQuote '"'>
                                <': [\n'>
                                <'        {\n'>
                                <'            '>
                                <Id.Right_DoubleQuote '"'>
                                <C>
                                <Id.Right_DoubleQuote '"'>
                                <': '>
                                <Id.Right_DoubleQuote '"'>
                                <US>
                                <Id.Right_DoubleQuote '"'>
                                <',\n'>
                                <'            '>
                                <Id.Right_DoubleQuote '"'>
                                <L>
                                <Id.Right_DoubleQuote '"'>
                                <': '>
                                <Id.Right_DoubleQuote '"'>
                                <CA>
                                <Id.Right_DoubleQuote '"'>
                                <',\n'>
                                <'            '>
                                <Id.Right_DoubleQuote '"'>
                                <O>
                                <Id.Right_DoubleQuote '"'>
                                <': '>
                                <Id.Right_DoubleQuote '"'>
                                <kubernetes.io>
                                <Id.Right_DoubleQuote '"'>
                                <'\n'>
                                <'        }\n'>
                                <'    ]\n'>
                                <'}\n'>
                              ]
                            )
                        )
                      ]
                      do_fork: T
                    )
                  ]
                  spids: [9957 9972]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.LogicalAnd
                                  left: 
                                    (bool_expr.Unary
                                      op_id: Id.BoolUnary_n
                                      child: {(DQ (${ Id.VSub_Name GEN_ETCD_CA_CERT))}
                                    )
                                  right: 
                                    (bool_expr.Unary
                                      op_id: Id.BoolUnary_n
                                      child: {(DQ (${ Id.VSub_Name GEN_ETCD_CA_KEY))}
                                    )
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Pipeline
                      children: [
                        (command.Simple
                          blame_tok: <echo>
                          more_env: []
                          words: [{<echo>} {(DQ (${ Id.VSub_Name ca_cert))}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <base64>
                          more_env: []
                          words: [{<base64>} {<--decode>}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <gunzip>
                          more_env: []
                          words: [{<gunzip>}]
                          redirects: [
                            (Redir
                              op: <Id.Redir_Great '>'>
                              loc: (redir_loc.Fd fd:1)
                              arg: {<ca.pem>}
                            )
                          ]
                          do_fork: T
                        )
                      ]
                      ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                    )
                    (command.Pipeline
                      children: [
                        (command.Simple
                          blame_tok: <echo>
                          more_env: []
                          words: [{<echo>} {(DQ (${ Id.VSub_Name ca_key))}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <base64>
                          more_env: []
                          words: [{<base64>} {<--decode>}]
                          redirects: [
                            (Redir
                              op: <Id.Redir_Great '>'>
                              loc: (redir_loc.Fd fd:1)
                              arg: {<ca-key.pem>}
                            )
                          ]
                          do_fork: T
                        )
                      ]
                      ops: [<Id.Op_Pipe _>]
                    )
                  ]
                  spids: [10056 10081]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.LogicalOr
                                  left: 
                                    (bool_expr.LogicalNot
                                      child: 
                                        (bool_expr.Unary
                                          op_id: Id.BoolUnary_r
                                          child: {(DQ <ca.pem>)}
                                        )
                                    )
                                  right: 
                                    (bool_expr.LogicalNot
                                      child: 
                                        (bool_expr.Unary
                                          op_id: Id.BoolUnary_r
                                          child: {(DQ <ca-key.pem>)}
                                        )
                                    )
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Pipeline
                      children: [
                        (command.Simple
                          blame_tok: <Id.Left_DollarBrace '${'>
                          more_env: []
                          words: [{(${ Id.VSub_Name CFSSL_BIN)} {<gencert>} {<-initca>} {<ca-csr.json>}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <Id.Left_DollarBrace '${'>
                          more_env: []
                          words: [{(${ Id.VSub_Name CFSSLJSON_BIN)} {<-bare>} {<ca>} {<->}]
                          redirects: []
                          do_fork: T
                        )
                      ]
                      ops: [<Id.Op_Pipe _>]
                    )
                  ]
                  spids: [10130 10155]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Case
              case_kw: <Id.KW_Case case>
              to_match: (case_arg.Word w:{(DQ (${ Id.VSub_Name type_cert))})
              arms_start: <Id.KW_In in>
              arms: [
                (CaseArm
                  left: <client>
                  pattern: (pat.Words words:[{<client>}])
                  middle: <Id.Right_CasePat _>
                  action: [
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [{<echo>} {(DQ <'Generate client certificates...'>)}]
                      redirects: []
                      do_fork: T
                    )
                    (command.Pipeline
                      children: [
                        (command.Simple
                          blame_tok: <echo>
                          more_env: []
                          words: [
                            {<echo>}
                            {(SQ <'{"CN":"client","hosts":["*"],"key":{"algo":"ecdsa","size":256}}'>)}
                          ]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <Id.Left_DollarBrace '${'>
                          more_env: []
                          words: [
                            {(${ Id.VSub_Name CFSSL_BIN)}
                            {<gencert>}
                            {<-ca> <Id.Lit_Equals '='> <ca.pem>}
                            {<-ca-key> <Id.Lit_Equals '='> <ca-key.pem>}
                            {<-config> <Id.Lit_Equals '='> <ca-config.json>}
                            {<-profile> <Id.Lit_Equals '='> <client>}
                            {<->}
                          ]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <Id.Left_DollarBrace '${'>
                          more_env: []
                          words: [
                            {(${ Id.VSub_Name CFSSLJSON_BIN)}
                            {<-bare>}
                            {(DQ (${ Id.VSub_Name prefix))}
                          ]
                          redirects: []
                          do_fork: T
                        )
                      ]
                      ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                    )
                  ]
                  right: <Id.Op_DSemi _>
                )
                (CaseArm
                  left: <server>
                  pattern: (pat.Words words:[{<server>}])
                  middle: <Id.Right_CasePat _>
                  action: [
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [{<echo>} {(DQ <'Generate server certificates...'>)}]
                      redirects: []
                      do_fork: T
                    )
                    (command.Pipeline
                      children: [
                        (command.Simple
                          blame_tok: <echo>
                          more_env: []
                          words: [
                            {<echo>}
                            {(SQ <'{"CN":"'>) (${ Id.VSub_Name member_ip) 
                              (SQ <'","hosts":[""],"key":{"algo":"ecdsa","size":256}}'>)
                            }
                          ]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <Id.Left_DollarBrace '${'>
                          more_env: []
                          words: [
                            {(${ Id.VSub_Name CFSSL_BIN)}
                            {<gencert>}
                            {<-ca> <Id.Lit_Equals '='> <ca.pem>}
                            {<-ca-key> <Id.Lit_Equals '='> <ca-key.pem>}
                            {<-config> <Id.Lit_Equals '='> <ca-config.json>}
                            {<-profile> <Id.Lit_Equals '='> <server>}
                            {<-hostname> <Id.Lit_Equals '='> 
                              (DQ (${ Id.VSub_Name member_ip) <',127.0.0.1'>)
                            }
                            {<->}
                          ]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <Id.Left_DollarBrace '${'>
                          more_env: []
                          words: [
                            {(${ Id.VSub_Name CFSSLJSON_BIN)}
                            {<-bare>}
                            {(DQ (${ Id.VSub_Name prefix))}
                          ]
                          redirects: []
                          do_fork: T
                        )
                      ]
                      ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                    )
                  ]
                  right: <Id.Op_DSemi _>
                )
                (CaseArm
                  left: <peer>
                  pattern: (pat.Words words:[{<peer>}])
                  middle: <Id.Right_CasePat _>
                  action: [
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [{<echo>} {(DQ <'Generate peer certificates...'>)}]
                      redirects: []
                      do_fork: T
                    )
                    (command.Pipeline
                      children: [
                        (command.Simple
                          blame_tok: <echo>
                          more_env: []
                          words: [
                            {<echo>}
                            {(SQ <'{"CN":"'>) (${ Id.VSub_Name member_ip) 
                              (SQ <'","hosts":[""],"key":{"algo":"ecdsa","size":256}}'>)
                            }
                          ]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <Id.Left_DollarBrace '${'>
                          more_env: []
                          words: [
                            {(${ Id.VSub_Name CFSSL_BIN)}
                            {<gencert>}
                            {<-ca> <Id.Lit_Equals '='> <ca.pem>}
                            {<-ca-key> <Id.Lit_Equals '='> <ca-key.pem>}
                            {<-config> <Id.Lit_Equals '='> <ca-config.json>}
                            {<-profile> <Id.Lit_Equals '='> <peer>}
                            {<-hostname> <Id.Lit_Equals '='> 
                              (DQ (${ Id.VSub_Name member_ip) <',127.0.0.1'>)
                            }
                            {<->}
                          ]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <Id.Left_DollarBrace '${'>
                          more_env: []
                          words: [
                            {(${ Id.VSub_Name CFSSLJSON_BIN)}
                            {<-bare>}
                            {(DQ (${ Id.VSub_Name prefix))}
                          ]
                          redirects: []
                          do_fork: T
                        )
                      ]
                      ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                    )
                  ]
                  right: <Id.Op_DSemi _>
                )
                (CaseArm
                  left: <Id.Lit_Star '*'>
                  pattern: (pat.Words words:[{<Id.Lit_Star '*'>}])
                  middle: <Id.Right_CasePat _>
                  action: [
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [
                        {<echo>}
                        {(DQ <'Unknow, unsupported etcd certs type: '> (${ Id.VSub_Name type_cert))}
                      ]
                      redirects: [(Redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})]
                      do_fork: T
                    )
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [{<echo>} {(DQ <'Supported type: client, server, peer'>)}]
                      redirects: [(Redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})]
                      do_fork: T
                    )
                    (command.ControlFlow
                      keyword: <Id.ControlFlow_Exit exit>
                      arg_word: {<2>}
                    )
                  ]
                )
              ]
              arms_end: <Id.KW_Esac esac>
              redirects: []
            )
            (command.Simple
              blame_tok: <popd>
              more_env: []
              words: [{<popd>}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <get-env-val>
      name: get-env-val
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'match='> 
                  (CommandSub
                    left_token: <Id.Left_Backtick '`'>
                    child: 
                      (command.AndOr
                        children: [
                          (command.Subshell
                            left: <Id.Op_LParen _>
                            child: 
                              (command.Pipeline
                                children: [
                                  (command.Simple
                                    blame_tok: <echo>
                                    more_env: []
                                    words: [{<echo>} {(DQ (${ Id.VSub_Number 1))}]
                                    redirects: []
                                    do_fork: T
                                  )
                                  (command.Simple
                                    blame_tok: <grep>
                                    more_env: []
                                    words: [{<grep>} {<-E>} {(DQ <'^'> (${ Id.VSub_Number 2) <':'>)}]
                                    redirects: []
                                    do_fork: T
                                  )
                                ]
                                ops: [<Id.Op_Pipe _>]
                              )
                            right: <Id.Right_Subshell _>
                            redirects: []
                          )
                          (command.Simple
                            blame_tok: <echo>
                            more_env: []
                            words: [{<echo>} {(DQ )}]
                            redirects: []
                            do_fork: T
                          )
                        ]
                        ops: [<Id.Op_DPipe _>]
                      )
                    right: <Id.Backtick_Right '`'>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Unary
                                  op_id: Id.BoolUnary_z
                                  child: {(${ Id.VSub_Name match)}
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [{<echo>} {(DQ )}]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  spids: [10528 10541]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Pipeline
              children: [
                (command.Simple
                  blame_tok: <echo>
                  more_env: []
                  words: [{<echo>} {(${ Id.VSub_Name match)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <cut>
                  more_env: []
                  words: [{<cut>} {<-d>} {<Id.Lit_Colon ':'>} {<-f>} {<2>}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <cut>
                  more_env: []
                  words: [
                    {<cut>}
                    {<-d>}
                    {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\''> ch:'\'')}
                    {<-f>}
                    {<2>}
                  ]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <parse-master-env>
      name: parse-master-env
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'master_env='> 
                  (CommandSub
                    left_token: <Id.Left_DollarParen '$('>
                    child: 
                      (command.Simple
                        blame_tok: <get-master-env>
                        more_env: []
                        words: [{<get-master-env>}]
                        redirects: []
                        do_fork: T
                      )
                    right: <Id.Eof_RParen _>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBELET_TOKEN='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBELET_TOKEN='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'KUBELET_TOKEN='> name:KUBELET_TOKEN)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <get-env-val>
                            more_env: []
                            words: [
                              {<get-env-val>}
                              {(DQ (${ Id.VSub_Name master_env))}
                              {(DQ <KUBELET_TOKEN>)}
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBE_PROXY_TOKEN='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBE_PROXY_TOKEN='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'KUBE_PROXY_TOKEN='>
                      name: KUBE_PROXY_TOKEN
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <get-env-val>
                            more_env: []
                            words: [
                              {<get-env-val>}
                              {(DQ (${ Id.VSub_Name master_env))}
                              {(DQ <KUBE_PROXY_TOKEN>)}
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'NODE_PROBLEM_DETECTOR_TOKEN='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'NODE_PROBLEM_DETECTOR_TOKEN='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'NODE_PROBLEM_DETECTOR_TOKEN='>
                      name: NODE_PROBLEM_DETECTOR_TOKEN
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <get-env-val>
                            more_env: []
                            words: [
                              {<get-env-val>}
                              {(DQ (${ Id.VSub_Name master_env))}
                              {(DQ <NODE_PROBLEM_DETECTOR_TOKEN>)}
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'CA_CERT_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'CA_CERT_BASE64='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'CA_CERT_BASE64='> name:CA_CERT_BASE64)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <get-env-val>
                            more_env: []
                            words: [{<get-env-val>} {(DQ (${ Id.VSub_Name master_env))} {(DQ <CA_CERT>)}]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'CA_KEY_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'CA_KEY_BASE64='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'CA_KEY_BASE64='> name:CA_KEY_BASE64)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <get-env-val>
                            more_env: []
                            words: [{<get-env-val>} {(DQ (${ Id.VSub_Name master_env))} {(DQ <CA_KEY>)}]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBEAPISERVER_CERT_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBEAPISERVER_CERT_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'KUBEAPISERVER_CERT_BASE64='>
                      name: KUBEAPISERVER_CERT_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <get-env-val>
                            more_env: []
                            words: [
                              {<get-env-val>}
                              {(DQ (${ Id.VSub_Name master_env))}
                              {(DQ <KUBEAPISERVER_CERT>)}
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBEAPISERVER_KEY_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBEAPISERVER_KEY_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'KUBEAPISERVER_KEY_BASE64='>
                      name: KUBEAPISERVER_KEY_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <get-env-val>
                            more_env: []
                            words: [
                              {<get-env-val>}
                              {(DQ (${ Id.VSub_Name master_env))}
                              {(DQ <KUBEAPISERVER_KEY>)}
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'EXTRA_DOCKER_OPTS='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'EXTRA_DOCKER_OPTS='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'EXTRA_DOCKER_OPTS='>
                      name: EXTRA_DOCKER_OPTS
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <get-env-val>
                            more_env: []
                            words: [
                              {<get-env-val>}
                              {(DQ (${ Id.VSub_Name master_env))}
                              {(DQ <EXTRA_DOCKER_OPTS>)}
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBELET_CERT_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBELET_CERT_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'KUBELET_CERT_BASE64='>
                      name: KUBELET_CERT_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <get-env-val>
                            more_env: []
                            words: [
                              {<get-env-val>}
                              {(DQ (${ Id.VSub_Name master_env))}
                              {(DQ <KUBELET_CERT>)}
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'KUBELET_KEY_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'KUBELET_KEY_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'KUBELET_KEY_BASE64='>
                      name: KUBELET_KEY_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <get-env-val>
                            more_env: []
                            words: [
                              {<get-env-val>}
                              {(DQ (${ Id.VSub_Name master_env))}
                              {(DQ <KUBELET_KEY>)}
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'MASTER_CERT_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'MASTER_CERT_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'MASTER_CERT_BASE64='>
                      name: MASTER_CERT_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <get-env-val>
                            more_env: []
                            words: [
                              {<get-env-val>}
                              {(DQ (${ Id.VSub_Name master_env))}
                              {(DQ <MASTER_CERT>)}
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'MASTER_KEY_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'MASTER_KEY_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'MASTER_KEY_BASE64='>
                      name: MASTER_KEY_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <get-env-val>
                            more_env: []
                            words: [
                              {<get-env-val>}
                              {(DQ (${ Id.VSub_Name master_env))}
                              {(DQ <MASTER_KEY>)}
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'AGGREGATOR_CA_KEY_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'AGGREGATOR_CA_KEY_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'AGGREGATOR_CA_KEY_BASE64='>
                      name: AGGREGATOR_CA_KEY_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <get-env-val>
                            more_env: []
                            words: [
                              {<get-env-val>}
                              {(DQ (${ Id.VSub_Name master_env))}
                              {(DQ <AGGREGATOR_CA_KEY>)}
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'REQUESTHEADER_CA_CERT_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'REQUESTHEADER_CA_CERT_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'REQUESTHEADER_CA_CERT_BASE64='>
                      name: REQUESTHEADER_CA_CERT_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <get-env-val>
                            more_env: []
                            words: [
                              {<get-env-val>}
                              {(DQ (${ Id.VSub_Name master_env))}
                              {(DQ <REQUESTHEADER_CA_CERT>)}
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'PROXY_CLIENT_CERT_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'PROXY_CLIENT_CERT_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'PROXY_CLIENT_CERT_BASE64='>
                      name: PROXY_CLIENT_CERT_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <get-env-val>
                            more_env: []
                            words: [
                              {<get-env-val>}
                              {(DQ (${ Id.VSub_Name master_env))}
                              {(DQ <PROXY_CLIENT_CERT>)}
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'PROXY_CLIENT_KEY_BASE64='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'PROXY_CLIENT_KEY_BASE64='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'PROXY_CLIENT_KEY_BASE64='>
                      name: PROXY_CLIENT_KEY_BASE64
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <get-env-val>
                            more_env: []
                            words: [
                              {<get-env-val>}
                              {(DQ (${ Id.VSub_Name master_env))}
                              {(DQ <PROXY_CLIENT_KEY>)}
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'ENABLE_LEGACY_ABAC='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'ENABLE_LEGACY_ABAC='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'ENABLE_LEGACY_ABAC='>
                      name: ENABLE_LEGACY_ABAC
                    )
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <get-env-val>
                            more_env: []
                            words: [
                              {<get-env-val>}
                              {(DQ (${ Id.VSub_Name master_env))}
                              {(DQ <ENABLE_LEGACY_ABAC>)}
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <update-or-verify-gcloud>
      name: update-or-verify-gcloud
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [{<local>} {<Id.Lit_VarLike 'sudo_prefix='> (DQ )}]
              redirects: []
              do_fork: T
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {<Id.KW_Bang '!'>}
                                {<-w>}
                                {
                                  (CommandSub
                                    left_token: <Id.Left_DollarParen '$('>
                                    child: 
                                      (command.Simple
                                        blame_tok: <dirname>
                                        more_env: []
                                        words: [
                                          {<dirname>}
                                          {
                                            (CommandSub
                                              left_token: <Id.Left_Backtick '`'>
                                              child: 
                                                (command.Simple
                                                  blame_tok: <which>
                                                  more_env: []
                                                  words: [{<which>} {<gcloud>}]
                                                  redirects: []
                                                  do_fork: T
                                                )
                                              right: <Id.Backtick_Right '`'>
                                            )
                                          }
                                        ]
                                        redirects: []
                                        do_fork: T
                                      )
                                    right: <Id.Eof_RParen _>
                                  )
                                }
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'sudo_prefix='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'sudo_prefix='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'sudo_prefix='>
                              name: sudo_prefix
                            )
                          op: assign_op.Equal
                          rhs: {(DQ <sudo>)}
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [10912 10935]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Binary
                                  op_id: Id.BoolBinary_GlobDEqual
                                  left: {(DQ (${ Id.VSub_Name KUBE_PROMPT_FOR_UPDATE))}
                                  right: {(DQ <y>)}
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <Id.Left_DollarBrace '${'>
                      more_env: []
                      words: [
                        {(${ Id.VSub_Name sudo_prefix)}
                        {<gcloud>}
                        {
                          (BracedVarSub
                            left: <Id.Left_DollarBrace '${'>
                            token: <Id.VSub_Name gcloud_prompt>
                            var_name: gcloud_prompt
                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                            right: <Id.Right_DollarBrace '}'>
                          )
                        }
                        {<components>}
                        {<install>}
                        {<alpha>}
                      ]
                      redirects: []
                      do_fork: T
                    )
                    (command.Simple
                      blame_tok: <Id.Left_DollarBrace '${'>
                      more_env: []
                      words: [
                        {(${ Id.VSub_Name sudo_prefix)}
                        {<gcloud>}
                        {
                          (BracedVarSub
                            left: <Id.Left_DollarBrace '${'>
                            token: <Id.VSub_Name gcloud_prompt>
                            var_name: gcloud_prompt
                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                            right: <Id.Right_DollarBrace '}'>
                          )
                        }
                        {<components>}
                        {<install>}
                        {<beta>}
                      ]
                      redirects: []
                      do_fork: T
                    )
                    (command.Simple
                      blame_tok: <Id.Left_DollarBrace '${'>
                      more_env: []
                      words: [
                        {(${ Id.VSub_Name sudo_prefix)}
                        {<gcloud>}
                        {
                          (BracedVarSub
                            left: <Id.Left_DollarBrace '${'>
                            token: <Id.VSub_Name gcloud_prompt>
                            var_name: gcloud_prompt
                            suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{})
                            right: <Id.Right_DollarBrace '}'>
                          )
                        }
                        {<components>}
                        {<update>}
                      ]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  spids: [10951 10970]
                )
              ]
              else_kw: <Id.KW_Else else>
              else_action: [
                (command.Simple
                  blame_tok: <local>
                  more_env: []
                  words: [
                    {<local>}
                    {<Id.Lit_VarLike 'version='> 
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <gcloud>
                            more_env: []
                            words: [{<gcloud>} {<version>} {<--format> <Id.Lit_Equals '='> <json>}]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                  ]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <python>
                  more_env: []
                  words: [
                    {<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 (${ Id.VSub_Name version)) (DQ )}
                  ]
                  redirects: []
                  do_fork: T
                )
              ]
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <verify-kube-binaries>
      name: verify-kube-binaries
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [{<local>} {<Id.Lit_VarLike 'missing_binaries='> <false>}]
              redirects: []
              do_fork: T
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Pipeline
                              negated: <Id.KW_Bang '!'>
                              children: [
                                (command.Simple
                                  blame_tok: <Id.Left_DoubleQuote '"'>
                                  more_env: []
                                  words: [
                                    {(DQ (${ Id.VSub_Name KUBE_ROOT) <'/cluster/kubectl.sh'>)}
                                    {<version>}
                                    {<--client>}
                                  ]
                                  redirects: [
                                    (Redir
                                      op: <Id.Redir_GreatAnd '>&'>
                                      loc: (redir_loc.Fd fd:1)
                                      arg: {<'/dev/null'>}
                                    )
                                  ]
                                  do_fork: T
                                )
                              ]
                              ops: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [{<echo>} {(DQ <'!!! kubectl appears to be broken or missing'>)}]
                      redirects: []
                      do_fork: T
                    )
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'missing_binaries='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'missing_binaries='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'missing_binaries='>
                              name: missing_binaries
                            )
                          op: assign_op.Equal
                          rhs: {<true>}
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [11111 11130]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Pipeline
                              negated: <Id.KW_Bang '!'>
                              children: [
                                (command.Simple
                                  blame_tok: <Id.Left_DollarParen '$('>
                                  more_env: []
                                  words: [
                                    {
                                      (CommandSub
                                        left_token: <Id.Left_DollarParen '$('>
                                        child: 
                                          (command.Simple
                                            blame_tok: <find-release-tars>
                                            more_env: []
                                            words: [{<find-release-tars>}]
                                            redirects: []
                                            do_fork: T
                                          )
                                        right: <Id.Eof_RParen _>
                                      )
                                    }
                                  ]
                                  redirects: []
                                  do_fork: T
                                )
                              ]
                              ops: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.ShAssignment
                      left: <Id.Lit_VarLike 'missing_binaries='>
                      pairs: [
                        (AssignPair
                          left: <Id.Lit_VarLike 'missing_binaries='>
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'missing_binaries='>
                              name: missing_binaries
                            )
                          op: assign_op.Equal
                          rhs: {<true>}
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [11147 11156]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Pipeline
                              negated: <Id.KW_Bang '!'>
                              children: [
                                (command.Simple
                                  blame_tok: <Id.Left_DoubleQuote '"'>
                                  more_env: []
                                  words: [{(DQ (${ Id.VSub_Name missing_binaries))}]
                                  redirects: []
                                  do_fork: T
                                )
                              ]
                              ops: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [(command.ControlFlow keyword:<Id.ControlFlow_Return return>)]
                  spids: [11167 11178]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'get_binaries_script='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'get_binaries_script='>
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'get_binaries_script='>
                      name: get_binaries_script
                    )
                  op: assign_op.Equal
                  rhs: {(DQ (${ Id.VSub_Name KUBE_ROOT) <'/cluster/get-kube-binaries.sh'>)}
                )
              ]
              redirects: []
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [{<local>} {<Id.Lit_VarLike 'resp='> (DQ <y>)}]
              redirects: []
              do_fork: T
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.LogicalNot
                                  child: 
                                    (bool_expr.Binary
                                      op_id: Id.BoolBinary_EqualTilde
                                      left: 
                                        {
                                          (DQ 
                                            (BracedVarSub
                                              left: <Id.Left_DollarBrace '${'>
                                              token: <Id.VSub_Name KUBERNETES_SKIP_CONFIRM>
                                              var_name: KUBERNETES_SKIP_CONFIRM
                                              suffix_op: 
                                                (suffix_op.Unary
                                                  op: <Id.VTest_ColonHyphen _>
                                                  arg_word: {<n>}
                                                )
                                              right: <Id.Right_DollarBrace '}'>
                                            )
                                          )
                                        }
                                      right: 
                                        {<Id.Lit_Other '^'> <Id.Lit_Other '['> <yY> <Id.Lit_Other ']'> 
                                          <Id.Lit_Other '$'>
                                        }
                                    )
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [
                        {<echo>}
                        {
                          (DQ 
                            <
'Required binaries appear to be missing. Do you wish to download them? [Y/n]'
                            >
                          )
                        }
                      ]
                      redirects: []
                      do_fork: T
                    )
                    (command.Simple
                      blame_tok: <read>
                      more_env: []
                      words: [{<read>} {<resp>}]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  spids: [11205 11230]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DBracket
                              left: <Id.KW_DLeftBracket '[['>
                              expr: 
                                (bool_expr.Binary
                                  op_id: Id.BoolBinary_EqualTilde
                                  left: {(DQ (${ Id.VSub_Name resp))}
                                  right: 
                                    {<Id.Lit_Other '^'> <Id.Lit_Other '['> <nN> <Id.Lit_Other ']'> 
                                      <Id.Lit_Other '$'>
                                    }
                                )
                              right: <Id.Lit_DRightBracket ']]'>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [{<echo>} {(DQ <'You must download binaries to continue. You can use '>)}]
                      redirects: []
                      do_fork: T
                    )
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [{<echo>} {(DQ <'  '> (${ Id.VSub_Name get_binaries_script))}]
                      redirects: []
                      do_fork: T
                    )
                    (command.Simple
                      blame_tok: <echo>
                      more_env: []
                      words: [{<echo>} {(DQ <'to do this for your automatically.'>)}]
                      redirects: []
                      do_fork: T
                    )
                    (command.ControlFlow
                      keyword: <Id.ControlFlow_Exit exit>
                      arg_word: {<1>}
                    )
                  ]
                  spids: [11248 11269]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Simple
              blame_tok: <Id.Left_DoubleQuote '"'>
              more_env: []
              words: [{(DQ (${ Id.VSub_Name get_binaries_script))}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <pushd>
      name: pushd
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <command>
              more_env: []
              words: [{<command>} {<pushd>} {($ Id.VSub_At '@')}]
              redirects: [(Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<'/dev/null'>})]
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      keyword: <Id.KW_Function function>
      name_tok: <popd>
      name: popd
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <command>
              more_env: []
              words: [{<command>} {<popd>} {($ Id.VSub_At '@')}]
              redirects: [(Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<'/dev/null'>})]
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
  ]
)