(CommandList
  children: [
    (Sentence
      child: 
        (C {(.)} 
          {
            (DQ 
              (BracedVarSub
                token: <VSub_Name srcdir>
                suffix_op: (StringUnary op_id:VTest_Equals arg_word:{(.)})
                spids: [47 51]
              ) (/tests/init.sh)
            )
          }
        )
      terminator: <Op_Semi ';'>
    )
    (C {(path_prepend_)} {(./src)})
    (C {(print_ver_)} {(sort)})
    (FuncDef
      name: dbl_minima_order
      body: 
        (BraceGroup
          children: [
            (SimpleCommand
              words: [{(getlimits_)}]
              more_env: [(env_pair name:LC_ALL val:{(C)} spids:[112])]
            )
            (C {(set)} {(--)} 
              {
                (CommandSubPart
                  command_list: 
                    (CommandList
                      children: [
                        (Pipeline
                          children: [
                            (C {(echo)} {($ VSub_Name '$LDBL_MIN')})
                            (C {(tr)} {(.e-)} {(SQ <'   '>)})
                          ]
                          negated: F
                        )
                      ]
                    )
                  left_token: <Left_CommandSub '$('>
                  spids: [122 136]
                )
              }
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:ldbl_whole)
                  op: Equal
                  rhs: {($ VSub_Number '$1')}
                  spids: [141]
                )
                (assign_pair
                  lhs: (LhsName name:ldbl_frac)
                  op: Equal
                  rhs: {($ VSub_Number '$2')}
                  spids: [144]
                )
                (assign_pair
                  lhs: (LhsName name:ldbl_exp)
                  op: Equal
                  rhs: {($ VSub_Number '$3')}
                  spids: [147]
                )
              ]
              spids: [139]
            )
            (C {(set)} {(--)} 
              {
                (CommandSubPart
                  command_list: 
                    (CommandList
                      children: [
                        (Pipeline
                          children: [
                            (C {(echo)} {($ VSub_Name '$DBL_MIN')})
                            (C {(tr)} {(.e-)} {(SQ <'   '>)})
                          ]
                          negated: F
                        )
                      ]
                    )
                  left_token: <Left_CommandSub '$('>
                  spids: [156 169]
                )
              }
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:dbl_whole)
                  op: Equal
                  rhs: {($ VSub_Number '$1')}
                  spids: [174]
                )
                (assign_pair
                  lhs: (LhsName name:dbl_frac)
                  op: Equal
                  rhs: {($ VSub_Number '$2')}
                  spids: [177]
                )
                (assign_pair
                  lhs: (LhsName name:dbl_exp)
                  op: Equal
                  rhs: {($ VSub_Number '$3')}
                  spids: [180]
                )
              ]
              spids: [172]
            )
            (AndOr
              ops: [Op_DAmp]
              children: [
                (C {(test)} {(DQ ($ VSub_Name '$dbl_exp'))} {(-lt)} {(DQ ($ VSub_Name '$ldbl_exp'))})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})
              ]
            )
            (AndOr
              ops: [Op_DAmp]
              children: [
                (C {(test)} {(DQ ($ VSub_Name '$ldbl_exp'))} {(-lt)} {(DQ ($ VSub_Name '$dbl_exp'))})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
            )
            (AndOr
              ops: [Op_DAmp]
              children: [
                (C {(test)} {(DQ ($ VSub_Name '$ldbl_whole'))} {(-lt)} {(DQ ($ VSub_Name '$dbl_whole'))})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})
              ]
            )
            (AndOr
              ops: [Op_DAmp]
              children: [
                (C {(test)} {(DQ ($ VSub_Name '$dbl_whole'))} {(-lt)} {(DQ ($ VSub_Name '$ldbl_whole'))})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
            )
            (AndOr
              ops: [Op_DAmp]
              children: [
                (C {(test)} {(DQ ($ VSub_Name '$ldbl_frac'))} {(-le)} {(DQ ($ VSub_Name '$dbl_frac'))})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})
              ]
            )
            (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
          ]
          spids: [109]
        )
      spids: [105 108]
    )
    (Sentence child:(C {(dbl_minima_order)}) terminator:<Op_Semi ';'>)
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:reversed)
          op: Equal
          rhs: {($ VSub_QMark '$?')}
          spids: [293]
        )
      ]
      spids: [293]
    )
    (ForEach
      iter_name: LOC
      iter_words: [{(C)} {($ VSub_Name '$LOCALE_FR')}]
      do_arg_iter: F
      body: 
        (DoGroup
          children: [
            (SimpleCommand
              words: [{(getlimits_)}]
              more_env: [(env_pair name:LC_ALL val:{($ VSub_Name '$LOC')} spids:[312])]
            )
            (AndOr
              ops: [Op_DPipe]
              children: [
                (SimpleCommand
                  words: [
                    {(grep)}
                    {(SQ <'^#define HAVE_C99_STRTOLD 1'>)}
                    {($ VSub_Name '$CONFIG_HEADER')}
                  ]
                  redirects: [
                    (Redir
                      op_id: Redir_Great
                      fd: 16777215
                      arg_word: {(/dev/null)}
                      spids: [331]
                    )
                  ]
                )
                (BraceGroup
                  children: [
                    (Sentence
                      child: 
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:LDBL_MAX)
                              op: Equal
                              rhs: {(DQ ($ VSub_Name '$DBL_MAX'))}
                              spids: [340]
                            )
                          ]
                          spids: [340]
                        )
                      terminator: <Op_Semi ';'>
                    )
                    (Sentence
                      child: 
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:LDBL_MIN)
                              op: Equal
                              rhs: {(DQ ($ VSub_Name '$DBL_MIN'))}
                              spids: [346]
                            )
                          ]
                          spids: [346]
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  spids: [338]
                )
              ]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {($ VSub_Name '$reversed')} {(Lit_Other '=')} {(1)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:t)
                          op: Equal
                          rhs: {($ VSub_Name '$LDBL_MIN')}
                          spids: [378]
                        )
                      ]
                      spids: [378]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:LDBL_MIN)
                          op: Equal
                          rhs: {($ VSub_Name '$DBL_MIN')}
                          spids: [382]
                        )
                      ]
                      spids: [382]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:DBL_MIN)
                          op: Equal
                          rhs: {($ VSub_Name '$t')}
                          spids: [386]
                        )
                      ]
                      spids: [386]
                    )
                  ]
                  spids: [16777215 375]
                )
              ]
              spids: [16777215 390]
            )
            (Pipeline
              children: [
                (C {(printf)} {(--)} 
                  {
                    (DQ (-) ($ VSub_Name '$LDBL_MAX') ('\n') (-) ($ VSub_Name '$DBL_MAX') ('\n') (-) 
                      ($ VSub_Name '$FLT_MAX') ('\n') (-) ($ VSub_Name '$FLT_MIN') ('\n') (-) ($ VSub_Name '$DBL_MIN') ('\n') (-) ($ VSub_Name '$LDBL_MIN') 
                      ('\n') ('0\n') ($ VSub_Name '$LDBL_MIN') ('\n') ($ VSub_Name '$DBL_MIN') ('\n') ($ VSub_Name '$FLT_MIN') ('\n') 
                      ($ VSub_Name '$FLT_MAX') ('\n') ($ VSub_Name '$DBL_MAX') ('\n') ($ VSub_Name '$LDBL_MAX') ('\n')
                    )
                  }
                )
                (SimpleCommand
                  words: [{(grep)} {(SQ <'^[0-9.,e+-]*$'>)}]
                  redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(exp)} spids:[442])]
                )
              ]
              negated: F
            )
            (AndOr
              ops: [Op_DPipe]
              children: [
                (Pipeline
                  children: [
                    (C {(tac)} {(exp)})
                    (SimpleCommand
                      words: [{(sort)} {(-sg)}]
                      redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(out)} spids:[464])]
                      more_env: [(env_pair name:LC_ALL val:{($ VSub_Name '$LOC')} spids:[457])]
                    )
                  ]
                  negated: F
                )
                (Assignment
                  keyword: Assign_None
                  pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[470])]
                  spids: [470]
                )
              ]
            )
            (AndOr
              ops: [Op_DPipe]
              children: [
                (C {(compare)} {(exp)} {(out)})
                (Assignment
                  keyword: Assign_None
                  pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[483])]
                  spids: [483]
                )
              ]
            )
          ]
          spids: [308 486]
        )
      spids: [302 306]
    )
    (C {(Exit)} {($ VSub_Name '$fail')})
  ]
)