(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'version_string='> name:version_string)
          op: assign_op.Equal
          rhs: {(DQ <'Solaris Kerberos (based on MIT Kerberos 5 release 1.6.3)'>)}
          spids: [92]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'prefix='> name:prefix)
          op: assign_op.Equal
          rhs: {<'/usr'>}
          spids: [98]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'exec_prefix='> name:exec_prefix)
          op: assign_op.Equal
          rhs: {(${ Id.VSub_Name prefix)}
          spids: [101]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'includedir='> name:includedir)
          op: assign_op.Equal
          rhs: {(${ Id.VSub_Name prefix) <'/include/kerberosv5'>}
          spids: [106]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'libdir='> name:libdir)
          op: assign_op.Equal
          rhs: {(${ Id.VSub_Name exec_prefix) <'/lib'>}
          spids: [112]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'CC_LINK='> name:CC_LINK)
          op: assign_op.Equal
          rhs: {(SQ <'$(PURE) $(CC) $(PROG_LIBPATH) $(RPATH_FLAG)$(PROG_RPATH) $(CFLAGS) $(LDFLAGS)'>)}
          spids: [118]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'KDB5_DB_LIB='> name:KDB5_DB_LIB)
          op: assign_op.Equal
          rhs: (rhs_word.Empty)
          spids: [129]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'LDFLAGS='> name:LDFLAGS)
          op: assign_op.Equal
          rhs: {(SQ )}
          spids: [131]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'RPATH_FLAG='> name:RPATH_FLAG)
          op: assign_op.Equal
          rhs: {(SQ <-R>)}
          spids: [135]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'PTHREAD_CFLAGS='> name:PTHREAD_CFLAGS)
          op: assign_op.Equal
          rhs: {(SQ <'-D_REENTRANT '>)}
          spids: [140]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'GEN_LIB='> name:GEN_LIB)
          op: assign_op.Equal
          rhs: (rhs_word.Empty)
          spids: [149]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'library='> name:library)
          op: assign_op.Equal
          rhs: {<krb5>}
          spids: [155]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'vendor_string='> name:vendor_string)
          op: assign_op.Equal
          rhs: {(DQ <'Sun Microsystems, Inc.'>)}
          spids: [162]
        )
      ]
      redirects: []
    )
    (command.WhileUntil
      keyword: <Id.KW_While while>
      cond: 
        (condition.Shell
          commands: [
            (command.Sentence
              child: (C {<test>} {($ Id.VSub_Pound '#')} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<0>})
              terminator: <Id.Op_Semi _>
            )
          ]
        )
      body: 
        (command.DoGroup
          children: [
            (command.Case
              to_match: {($ Id.VSub_Number 1)}
              arms: [
                (case_arm
                  pat_list: [{<--all>}]
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'do_all='> name:do_all)
                          op: assign_op.Equal
                          rhs: {<1>}
                          spids: [200]
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [196 197 204 -1]
                )
                (case_arm
                  pat_list: [{<--cflags>}]
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'do_cflags='> name:do_cflags)
                          op: assign_op.Equal
                          rhs: {<1>}
                          spids: [211]
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [207 208 215 -1]
                )
                (case_arm
                  pat_list: [{<--deps>}]
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'do_deps='> name:do_deps)
                          op: assign_op.Equal
                          rhs: {<1>}
                          spids: [222]
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [218 219 226 -1]
                )
                (case_arm
                  pat_list: [{<--exec-prefix>}]
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: 
                            (sh_lhs_expr.Name
                              left: <Id.Lit_VarLike 'do_exec_prefix='>
                              name: do_exec_prefix
                            )
                          op: assign_op.Equal
                          rhs: {<1>}
                          spids: [233]
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [229 230 237 -1]
                )
                (case_arm
                  pat_list: [{<--help>}]
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'do_help='> name:do_help)
                          op: assign_op.Equal
                          rhs: {<1>}
                          spids: [244]
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [240 241 248 -1]
                )
                (case_arm
                  pat_list: [{<--libs>}]
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'do_libs='> name:do_libs)
                          op: assign_op.Equal
                          rhs: {<1>}
                          spids: [255]
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [251 252 259 -1]
                )
                (case_arm
                  pat_list: [{<--prefix>}]
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'do_prefix='> name:do_prefix)
                          op: assign_op.Equal
                          rhs: {<1>}
                          spids: [266]
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [262 263 270 -1]
                )
                (case_arm
                  pat_list: [{<--vendor>}]
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'do_vendor='> name:do_vendor)
                          op: assign_op.Equal
                          rhs: {<1>}
                          spids: [277]
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [273 274 281 -1]
                )
                (case_arm
                  pat_list: [{<--version>}]
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'do_version='> name:do_version)
                          op: assign_op.Equal
                          rhs: {<1>}
                          spids: [288]
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [284 285 292 -1]
                )
                (case_arm
                  pat_list: [{<krb5>}]
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'library='> name:library)
                          op: assign_op.Equal
                          rhs: {<krb5>}
                          spids: [299]
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [295 296 303 -1]
                )
                (case_arm
                  pat_list: [{<Id.Lit_Star '*'>}]
                  action: [
                    (C {<echo>} 
                      {
                        (DQ ($ Id.VSub_Number 0) <': Unknown option '> 
                          (word_part.EscapedLiteral
                            token: <Id.Lit_EscapedChar '\\`'>
                            ch: '`'
                          ) ($ Id.VSub_Number 1) <'\' -- use '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'> ch:'`') 
                          <'--help\' for usage'>
                        )
                      }
                    )
                    (command.ControlFlow
                      token: <Id.ControlFlow_Exit exit>
                      arg_word: {<1>}
                    )
                  ]
                  spids: [306 307 -1 328]
                )
              ]
              redirects: []
            )
            (C {<shift>})
          ]
        )
      redirects: []
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: 
                    (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName do_all))} {<-a>} {<-z>} 
                      {(DQ ($ Id.VSub_DollarName do_version))} {<-a>} {<-z>} {(DQ ($ Id.VSub_DollarName do_vendor))} {<-a>} {<-z>} {(DQ ($ Id.VSub_DollarName do_prefix))} 
                      {<-a>} {<-z>} {(DQ ($ Id.VSub_DollarName do_vendor))} {<-a>} {<-z>} {(DQ ($ Id.VSub_DollarName do_exec_prefix))} 
                      {<-a>} {<-z>} {(DQ ($ Id.VSub_DollarName do_cflags))} {<-a>} {<-z>} {(DQ ($ Id.VSub_DollarName do_libs))}
                    )
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'do_help='> name:do_help)
                  op: assign_op.Equal
                  rhs: {<1>}
                  spids: [409]
                )
              ]
              redirects: []
            )
          ]
          spids: [339 406]
        )
      ]
      else_action: []
      redirects: []
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName do_help))})
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [
            (C {<echo>} {(DQ <'Usage: '> ($ Id.VSub_Number 0) <' [OPTIONS] [LIBRARIES]'>)})
            (C {<echo>} {(DQ <'Options:'>)})
            (C {<echo>} {(DQ <'        [--help]          Help'>)})
            (C {<echo>} {(DQ <'        [--all]           Display version, vendor, and various values'>)})
            (C {<echo>} {(DQ <'        [--version]       Version information'>)})
            (C {<echo>} {(DQ <'        [--vendor]        Vendor information'>)})
            (C {<echo>} {(DQ <'        [--prefix]        Kerberos installed prefix'>)})
            (C {<echo>} {(DQ <'        [--exec-prefix]   Kerberos installed exec_prefix'>)})
            (C {<echo>} {(DQ <'        [--cflags]        Compile time CFLAGS'>)})
            (C {<echo>} {(DQ <'        [--libs]          List libraries required to link [LIBRARIES]'>)})
            (C {<echo>} {(DQ <'Libraries:'>)})
            (C {<echo>} {(DQ <'        krb5              Kerberos 5 application'>)})
            (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>})
          ]
          spids: [416 427]
        )
      ]
      else_action: []
      redirects: []
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName do_all))})
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'all_exit='> name:all_exit)
                  op: assign_op.Equal
                  rhs: (rhs_word.Empty)
                  spids: [539]
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'do_version='> name:do_version)
                  op: assign_op.Equal
                  rhs: {<1>}
                  spids: [542]
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'do_prefix='> name:do_prefix)
                  op: assign_op.Equal
                  rhs: {<1>}
                  spids: [546]
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'do_exec_prefix='> name:do_exec_prefix)
                  op: assign_op.Equal
                  rhs: {<1>}
                  spids: [550]
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'do_vendor='> name:do_vendor)
                  op: assign_op.Equal
                  rhs: {<1>}
                  spids: [554]
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'title_version='> name:title_version)
                  op: assign_op.Equal
                  rhs: {(DQ <'Version:     '>)}
                  spids: [558]
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'title_prefix='> name:title_prefix)
                  op: assign_op.Equal
                  rhs: {(DQ <'Prefix:      '>)}
                  spids: [564]
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: 
                    (sh_lhs_expr.Name
                      left: <Id.Lit_VarLike 'title_exec_prefix='>
                      name: title_exec_prefix
                    )
                  op: assign_op.Equal
                  rhs: {(DQ <'Exec_prefix: '>)}
                  spids: [570]
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'title_vendor='> name:title_vendor)
                  op: assign_op.Equal
                  rhs: {(DQ <'Vendor:      '>)}
                  spids: [576]
                )
              ]
              redirects: []
            )
          ]
          spids: [525 536]
        )
      ]
      else_action: [
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'all_exit='> name:all_exit)
              op: assign_op.Equal
              rhs: {(DQ <'exit 0'>)}
              spids: [584]
            )
          ]
          redirects: []
        )
      ]
      redirects: []
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName do_version))})
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [
            (C {<echo>} 
              {(DQ ($ Id.VSub_DollarName title_version) ($ Id.VSub_DollarName version_string))}
            )
            (C {($ Id.VSub_DollarName all_exit)})
          ]
          spids: [592 603]
        )
      ]
      else_action: []
      redirects: []
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName do_vendor))})
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [
            (C {<echo>} {(DQ ($ Id.VSub_DollarName title_vendor) ($ Id.VSub_DollarName vendor_string))})
            (C {($ Id.VSub_DollarName all_exit)})
          ]
          spids: [619 630]
        )
      ]
      else_action: []
      redirects: []
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName do_prefix))})
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [
            (C {<echo>} {(DQ ($ Id.VSub_DollarName title_prefix) ($ Id.VSub_DollarName prefix))})
            (C {($ Id.VSub_DollarName all_exit)})
          ]
          spids: [646 657]
        )
      ]
      else_action: []
      redirects: []
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName do_exec_prefix))})
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [
            (C {<echo>} 
              {(DQ ($ Id.VSub_DollarName title_exec_prefix) ($ Id.VSub_DollarName exec_prefix))}
            )
            (C {($ Id.VSub_DollarName all_exit)})
          ]
          spids: [673 684]
        )
      ]
      else_action: []
      redirects: []
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName do_cflags))})
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [(C {<echo>} {(DQ <-I> (${ Id.VSub_Name includedir))})]
          spids: [700 711]
        )
      ]
      else_action: []
      redirects: []
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName do_libs))})
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'lib_flags='> name:lib_flags)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (command_sub
                        left_token: <Id.Left_Backtick '`'>
                        child: 
                          (command.Pipeline
                            children: [
                              (C {<echo>} {($ Id.VSub_DollarName CC_LINK)})
                              (C {<sed>} {<-e>} {(SQ <'s/$(CC)//'>)} {<-e>} {(SQ <'s/$(PURE)//'>)} {<-e>} 
                                {(SQ <'s#$(PROG_RPATH)#'>) ($ Id.VSub_DollarName libdir) (SQ <'#'>)} {<-e>} {(SQ <'s#$(PROG_LIBPATH)#-L'>) ($ Id.VSub_DollarName libdir) (SQ <'#'>)} {<-e>} 
                                {(SQ <'s#$(RPATH_FLAG)#'>) (DQ ($ Id.VSub_DollarName RPATH_FLAG)) 
                                  (SQ <'#'>)
                                } {<-e>} {(SQ <'s#$(LDFLAGS)#'>) (DQ ($ Id.VSub_DollarName LDFLAGS)) (SQ <'#'>)} {<-e>} 
                                {(SQ <'s#$(PTHREAD_CFLAGS)#'>) 
                                  (DQ ($ Id.VSub_DollarName PTHREAD_CFLAGS)) (SQ <'#'>)
                                } {<-e>} {(SQ <'s#$(CFLAGS)#'>) (DQ ($ Id.VSub_DollarName CFLAGS)) (SQ <'#'>)}
                              )
                            ]
                            negated: F
                            stderr_indices: []
                          )
                        right: <Id.Backtick_Right '`'>
                      )
                    }
                  spids: [745]
                )
              ]
              redirects: []
            )
            (command.If
              arms: [
                (if_arm
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (C {<test>} {($ Id.VSub_DollarName library)} {<Id.Lit_Equals '='>} 
                              {(SQ <kdb>)}
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'lib_flags='> name:lib_flags)
                          op: assign_op.Equal
                          rhs: 
                            {
                              (DQ ($ Id.VSub_DollarName lib_flags) <' -lkdb5 '> 
                                ($ Id.VSub_DollarName KDB5_DB_LIB)
                              )
                            }
                          spids: [907]
                        )
                      ]
                      redirects: []
                    )
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'library='> name:library)
                          op: assign_op.Equal
                          rhs: {<krb5>}
                          spids: [915]
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [891 904]
                )
              ]
              else_action: []
              redirects: []
            )
            (command.If
              arms: [
                (if_arm
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (C {<test>} {($ Id.VSub_DollarName library)} {<Id.Lit_Equals '='>} 
                              {(SQ <kadm_server>)}
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'lib_flags='> name:lib_flags)
                          op: assign_op.Equal
                          rhs: 
                            {
                              (DQ ($ Id.VSub_DollarName lib_flags) <' -lkadm5srv -lkdb5 '> 
                                ($ Id.VSub_DollarName KDB5_DB_LIB)
                              )
                            }
                          spids: [939]
                        )
                      ]
                      redirects: []
                    )
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'library='> name:library)
                          op: assign_op.Equal
                          rhs: {<kadm_common>}
                          spids: [947]
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [923 936]
                )
              ]
              else_action: []
              redirects: []
            )
            (command.If
              arms: [
                (if_arm
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (C {<test>} {($ Id.VSub_DollarName library)} {<Id.Lit_Equals '='>} 
                              {(SQ <kadm_client>)}
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'lib_flags='> name:lib_flags)
                          op: assign_op.Equal
                          rhs: {(DQ ($ Id.VSub_DollarName lib_flags) <' -lkadm5clnt'>)}
                          spids: [971]
                        )
                      ]
                      redirects: []
                    )
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'library='> name:library)
                          op: assign_op.Equal
                          rhs: {<kadm_common>}
                          spids: [978]
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [955 968]
                )
              ]
              else_action: []
              redirects: []
            )
            (command.If
              arms: [
                (if_arm
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (C {<test>} {($ Id.VSub_DollarName library)} {<Id.Lit_Equals '='>} 
                              {(SQ <kadm_common>)}
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'lib_flags='> name:lib_flags)
                          op: assign_op.Equal
                          rhs: {(DQ ($ Id.VSub_DollarName lib_flags) <' -lgssrpc'>)}
                          spids: [1002]
                        )
                      ]
                      redirects: []
                    )
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'library='> name:library)
                          op: assign_op.Equal
                          rhs: {<gssapi>}
                          spids: [1009]
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [986 999]
                )
              ]
              else_action: []
              redirects: []
            )
            (command.If
              arms: [
                (if_arm
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (C {<test>} {($ Id.VSub_DollarName library)} {<Id.Lit_Equals '='>} 
                              {(SQ <gssapi>)}
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'lib_flags='> name:lib_flags)
                          op: assign_op.Equal
                          rhs: {(DQ ($ Id.VSub_DollarName lib_flags) <' -lgssapi_krb5'>)}
                          spids: [1033]
                        )
                      ]
                      redirects: []
                    )
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'library='> name:library)
                          op: assign_op.Equal
                          rhs: {<krb5>}
                          spids: [1040]
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [1017 1030]
                )
              ]
              else_action: []
              redirects: []
            )
            (command.If
              arms: [
                (if_arm
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (C {<test>} {($ Id.VSub_DollarName library)} {<Id.Lit_Equals '='>} 
                              {(SQ <krb4>)}
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'lib_flags='> name:lib_flags)
                          op: assign_op.Equal
                          rhs: 
                            {
                              (DQ ($ Id.VSub_DollarName lib_flags) <' '> 
                                ($ Id.VSub_DollarName KRB4_LIB) <' '> ($ Id.VSub_DollarName DES425_LIB)
                              )
                            }
                          spids: [1064]
                        )
                      ]
                      redirects: []
                    )
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'library='> name:library)
                          op: assign_op.Equal
                          rhs: {<krb5>}
                          spids: [1074]
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [1048 1061]
                )
              ]
              else_action: []
              redirects: []
            )
            (command.If
              arms: [
                (if_arm
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (C {<test>} {($ Id.VSub_DollarName library)} {<Id.Lit_Equals '='>} 
                              {(SQ <krb5>)}
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'lib_flags='> name:lib_flags)
                          op: assign_op.Equal
                          rhs: 
                            {
                              (DQ ($ Id.VSub_DollarName lib_flags) <' -lkrb5  '> 
                                ($ Id.VSub_DollarName LIBS) <' '> ($ Id.VSub_DollarName GEN_LIB)
                              )
                            }
                          spids: [1098]
                        )
                      ]
                      redirects: []
                    )
                  ]
                  spids: [1082 1095]
                )
              ]
              else_action: []
              redirects: []
            )
            (C {<echo>} {($ Id.VSub_DollarName lib_flags)})
          ]
          spids: [727 738]
        )
      ]
      else_action: []
      redirects: []
    )
    (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>})
  ]
)