(CommandList
  children: [
    (C {(set)} {(-o)} {(nounset)})
    (C {(set)} {(-o)} {(pipefail)})
    (C {(set)} {(-o)} {(errexit)})
    (FuncDef
      name: ubuntu-deps
      body: 
        (BraceGroup
          children: [
            (C {(sudo)} {(apt-get)} {(install)} {(python-dev)} {(gawk)} {(KW_Time time)} {(libreadline-dev)})
            (C {(test/spec.sh)} {(install-shells)})
          ]
          spids: [55]
        )
      spids: [51 54]
    )
    (FuncDef
      name: gen-help
      body: (BraceGroup children:[(C {(build/doc.sh)} {(osh-quick-ref)})] spids:[104])
      spids: [100 103]
    )
    (FuncDef
      name: py-ext
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:name)
                  op: Equal
                  rhs: {($ VSub_Number '$1')}
                  spids: [150]
                )
              ]
              spids: [148]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:setup_script)
                  op: Equal
                  rhs: {($ VSub_Number '$2')}
                  spids: [156]
                )
              ]
              spids: [154]
            )
            (C {(mkdir)} {(-p)} {(_devbuild/py-ext)})
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:arch)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: (CommandList children:[(C {(uname)} {(-m)})])
                        left_token: <Left_CommandSub '$('>
                        spids: [171 175]
                      )
                    }
                  spids: [170]
                )
              ]
              spids: [168]
            )
            (C {($ VSub_Name '$setup_script')} {(build)} {(--build-lib)} 
              {(_devbuild/py-ext/) ($ VSub_Name '$arch')}
            )
            (C {(shopt)} {(-s)} {(failglob)})
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:so)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(echo)} 
                                {(_devbuild/py-ext/) ($ VSub_Name '$arch') (/) ($ VSub_Name '$name') 
                                  (.so)
                                }
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [199 207]
                      )
                    }
                  spids: [198]
                )
              ]
              spids: [196]
            )
            (C {(ln)} {(-s)} {(-f)} {(-v)} {($ VSub_Name '$so')} {($ VSub_Name '$name') (.so)})
            (C {(file)} {($ VSub_Name '$name') (.so)})
          ]
          spids: [145]
        )
      spids: [141 144]
    )
    (FuncDef
      name: pylibc
      body: 
        (BraceGroup
          children: [
            (C {(py-ext)} {(libc)} {(build/setup.py)})
            (SimpleCommand
              words: [{(native/libc_test.py)}]
              more_env: [(env_pair name:PYTHONPATH val:{(.)} spids:[247])]
            )
          ]
          spids: [237]
        )
      spids: [233 236]
    )
    (FuncDef
      name: fastlex
      body: 
        (BraceGroup
          children: [
            (C {(build/codegen.sh)} {(ast-id-lex)})
            (C {(py-ext)} {(fastlex)} {(build/setup_fastlex.py)})
            (SimpleCommand
              words: [{(native/fastlex_test.py)}]
              more_env: [(env_pair name:PYTHONPATH val:{(.)} spids:[274])]
            )
          ]
          spids: [259]
        )
      spids: [255 258]
    )
    (FuncDef
      name: clean
      body: 
        (BraceGroup
          children: [
            (C {(rm)} {(-f)} {(--verbose)} {(libc.so)} {(fastlex.so)})
            (C {(rm)} {(-r)} {(-f)} {(--verbose)} {(_devbuild/py-ext)})
          ]
          spids: [286]
        )
      spids: [282 285]
    )
    (FuncDef
      name: minimal
      body: (BraceGroup children:[(C {(gen-help)})(C {(pylibc)})] spids:[320])
      spids: [316 319]
    )
    (FuncDef
      name: all
      body: 
        (BraceGroup
          children: [(C {(minimal)}) (C {(build/codegen.sh)}) (C {(fastlex)})]
          spids: [338]
        )
      spids: [334 337]
    )
    (C {(DQ ($ VSub_At '$@'))})
  ]
)