(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:ok) op:Equal rhs:{(0)} spids:[63])]
      spids: [63]
    )
    (ForEach
      iter_name: i
      iter_words: [
        {(-x)}
        {(/lib/ld.so)}
        {(/lib/ld-) (Lit_Other "*") (.so)}
        {(/usr/lib/ld.so)}
        {(/lib/rld)}
        {(-f)}
        {(/usr/shlib/libc.so)}
        {(/shlib/libc.so)}
        {(/usr/lib/libc.so)}
        {(-r)}
        {(/usr/shlib/libc.so)}
        {(/shlib/libc.so)}
      ]
      do_arg_iter: False
      body: 
        (DoGroup
          children: [
            (Case
              to_match: {($ VSub_Name "$i")}
              arms: [
                (case_arm
                  pat_list: [{(-) (Lit_Other "*")}]
                  action: [
                    (Sentence
                      child: 
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:op)
                              op: Equal
                              rhs: {($ VSub_Name "$i")}
                              spids: [117]
                            )
                          ]
                          spids: [117]
                        )
                      terminator: <Op_Semi ";">
                    )
                    (ControlFlow token:<ControlFlow_Continue continue>)
                  ]
                  spids: [113 115 123 -1]
                )
              ]
              spids: [106 110 126]
            )
            (If
              arms: [
                (if_arm
                  cond: [(C {(test)} {($ VSub_Name "$op")} {($ VSub_Name "$i")})]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [(assign_pair lhs:(LhsName name:ok) op:Equal rhs:{(1)} spids:[140])]
                      spids: [140]
                    )
                    (ControlFlow token:<ControlFlow_Break break>)
                  ]
                  spids: [-1 138]
                )
              ]
              spids: [-1 147]
            )
            (C {(set)} {(x)} 
              {($ VSub_Name "$i") (.) (Lit_Other "[") (0-9) (Lit_Other "]") (Lit_Other "*")}
            )
            (If
              arms: [
                (if_arm
                  cond: [(C {(test)} {($ VSub_Name "$op")} {($ VSub_Number "$2")})]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [(assign_pair lhs:(LhsName name:ok) op:Equal rhs:{(1)} spids:[173])]
                      spids: [173]
                    )
                    (ControlFlow token:<ControlFlow_Break break>)
                  ]
                  spids: [-1 171]
                )
              ]
              spids: [-1 180]
            )
          ]
          spids: [104 182]
        )
      spids: [71 -1]
    )
    (If
      arms: [
        (if_arm
          cond: [(C {(test)} {(DQ (0))} {(KW_Bang "!") (Lit_Other "=")} {(DQ ($ VSub_Name "$ok"))})]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:libpath)
                  op: Equal
                  rhs: {(lib) (Lit_Other ":") (LD_LIBRARY_PATH)}
                  spids: [201]
                )
              ]
              spids: [201]
            )
            (Case
              to_match: 
                {
                  (CommandSubPart
                    command_list: (CommandList children:[(C {(package)})])
                    left_token: <Left_Backtick "`">
                    spids: [209 211]
                  )
                }
              arms: [
                (case_arm
                  pat_list: [{(sgi.) (Lit_Other "*")}]
                  action: [
                    (If
                      arms: [
                        (if_arm
                          cond: [(C {(test)} {(-d)} {(/lib32)})]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:libpath)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ("lib32:LD_LIBRARYN32_PATH:sgi.mips3|sgi.*-n32,") 
                                        ($ VSub_Name "$libpath")
                                      )
                                    }
                                  spids: [231]
                                )
                              ]
                              spids: [231]
                            )
                          ]
                          spids: [-1 229]
                        )
                      ]
                      spids: [-1 238]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [(C {(test)} {(-d)} {(/lib64)})]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:libpath)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ("lib64:LD_LIBRARY64_PATH:sgi.mips[4-9]|sgi.*-64,") 
                                        ($ VSub_Name "$libpath")
                                      )
                                    }
                                  spids: [252]
                                )
                              ]
                              spids: [252]
                            )
                          ]
                          spids: [-1 250]
                        )
                      ]
                      spids: [-1 259]
                    )
                  ]
                  spids: [216 218 262 -1]
                )
                (case_arm
                  pat_list: [{(sol) (Lit_Other "*") (.) (Lit_Other "*")}]
                  action: [
                    (If
                      arms: [
                        (if_arm
                          cond: [(C {(test)} {(-d)} {(/lib/32)})]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:libpath)
                                  op: Equal
                                  rhs: {(DQ ("lib/32:LD_LIBRARY_PATH_32,") ($ VSub_Name "$libpath"))}
                                  spids: [282]
                                )
                              ]
                              spids: [282]
                            )
                          ]
                          spids: [-1 280]
                        )
                      ]
                      spids: [-1 289]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [(C {(test)} {(-d)} {(/lib/64)})]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:libpath)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ("lib/64:LD_LIBRARY_PATH_64:sol.*64*,") 
                                        ($ VSub_Name "$libpath")
                                      )
                                    }
                                  spids: [303]
                                )
                              ]
                              spids: [303]
                            )
                          ]
                          spids: [-1 301]
                        )
                      ]
                      spids: [-1 310]
                    )
                  ]
                  spids: [265 269 313 -1]
                )
              ]
              spids: [207 213 316]
            )
          ]
          spids: [-1 199]
        )
        (if_arm
          cond: [(C {(test)} {(-x)} {(/lib/dld.sl)})]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:libpath)
                  op: Equal
                  rhs: {(lib) (Lit_Other ":") (SHLIB_PATH)}
                  spids: [328]
                )
              ]
              spids: [328]
            )
          ]
          spids: [318 326]
        )
        (if_arm
          cond: [(C {(test)} {(-x)} {(/usr/lib/dyld)})]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:libpath)
                  op: Equal
                  rhs: {(lib) (Lit_Other ":") (DYLD_LIBRARY_PATH)}
                  spids: [343]
                )
              ]
              spids: [343]
            )
          ]
          spids: [333 341]
        )
      ]
      else_action: [
        (Case
          to_match: 
            {
              (CommandSubPart
                command_list: (CommandList children:[(C {(package)})])
                left_token: <Left_Backtick "`">
                spids: [352 354]
              )
            }
          arms: [
            (case_arm
              pat_list: [{(ibm.) (Lit_Other "*")} {(mvs.) (Lit_Other "*")}]
              action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:libpath)
                      op: Equal
                      rhs: {(lib) (Lit_Other ":") (LIBPATH)}
                      spids: [367]
                    )
                  ]
                  spids: [367]
                )
              ]
              spids: [359 364 373 -1]
            )
            (case_arm
              pat_list: [{(Lit_Other "*")}]
              action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [(assign_pair lhs:(LhsName name:libpath) op:Equal rhs:{(SQ )} spids:[379])]
                  spids: [379]
                )
              ]
              spids: [376 377 382 -1]
            )
          ]
          spids: [350 356 385]
        )
      ]
      spids: [348 387]
    )
    (Case
      to_match: {($ VSub_Name "$libpath")}
      arms: [
        (case_arm
          pat_list: [{(SQ )}]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:libpath) op:Equal rhs:{(bin)} spids:[399])]
              spids: [399]
            )
          ]
          spids: [-1 397 402 -1]
        )
      ]
      spids: [389 393 404]
    )
    (C {(echo)} 
      {
        (DQ ("#define CONF_LIBPATH\t") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) 
          ($ VSub_Name "$libpath") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">)
        )
      }
    )
  ]
)