(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: gen-osh-asdl
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:out)
                  op: Equal
                  rhs: {(_devbuild/gen/osh_asdl.py)}
                  spids: [131]
                )
              ]
              spids: [129]
            )
            (SimpleCommand
              words: [{(asdl/gen_python.py)} {(osh/osh.asdl)} {(SQ <osh.ast_>)}]
              redirects: [
                (Redir
                  op_id: Redir_Great
                  fd: 16777215
                  arg_word: {($ VSub_Name '$out')}
                  spids: [146]
                )
              ]
              more_env: [(env_pair name:PYTHONPATH val:{(.)} spids:[135])]
            )
            (C {(echo)} {(DQ ('Wrote ') ($ VSub_Name '$out'))})
          ]
          spids: [126]
        )
      spids: [122 125]
    )
    (FuncDef
      name: gen-runtime-asdl
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:out)
                  op: Equal
                  rhs: {(_devbuild/gen/runtime_asdl.py)}
                  spids: [170]
                )
              ]
              spids: [168]
            )
            (SimpleCommand
              words: [{(asdl/gen_python.py)} {(core/runtime.asdl)} {(SQ <core.runtime>)}]
              redirects: [
                (Redir
                  op_id: Redir_Great
                  fd: 16777215
                  arg_word: {($ VSub_Name '$out')}
                  spids: [185]
                )
              ]
              more_env: [(env_pair name:PYTHONPATH val:{(.)} spids:[174])]
            )
            (C {(echo)} {(DQ ('Wrote ') ($ VSub_Name '$out'))})
          ]
          spids: [165]
        )
      spids: [161 164]
    )
    (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: [228]
                )
              ]
              spids: [226]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:setup_script)
                  op: Equal
                  rhs: {($ VSub_Number '$2')}
                  spids: [234]
                )
              ]
              spids: [232]
            )
            (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: [249 253]
                      )
                    }
                  spids: [248]
                )
              ]
              spids: [246]
            )
            (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: [277 285]
                      )
                    }
                  spids: [276]
                )
              ]
              spids: [274]
            )
            (C {(ln)} {(-s)} {(-f)} {(-v)} {($ VSub_Name '$so')} {($ VSub_Name '$name') (.so)})
            (C {(file)} {($ VSub_Name '$name') (.so)})
          ]
          spids: [223]
        )
      spids: [219 222]
    )
    (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:[325])]
            )
          ]
          spids: [315]
        )
      spids: [311 314]
    )
    (FuncDef
      name: fastlex
      body: 
        (BraceGroup
          children: [
            (C {(build/codegen.sh)} {(ast-id-lex)})
            (C {(rm)} {(-f)} {(_devbuild/py-ext/x86_64/fastlex.so)})
            (C {(py-ext)} {(fastlex)} {(build/setup_fastlex.py)})
            (SimpleCommand
              words: [{(native/fastlex_test.py)}]
              more_env: [(env_pair name:PYTHONPATH val:{(.)} spids:[365])]
            )
          ]
          spids: [337]
        )
      spids: [333 336]
    )
    (FuncDef
      name: clean
      body: 
        (BraceGroup
          children: [
            (C {(rm)} {(-f)} {(--verbose)} {(libc.so)} {(fastlex.so)})
            (C {(rm)} {(-r)} {(-f)} {(--verbose)} {(_devbuild/py-ext)})
          ]
          spids: [377]
        )
      spids: [373 376]
    )
    (FuncDef
      name: minimal
      body: 
        (BraceGroup
          children: [
            (C {(mkdir)} {(-p)} {(_devbuild/gen)})
            (C {(touch)} {(_devbuild/__init__.py)} {(_devbuild/gen/__init__.py)})
            (C {(gen-help)})
            (C {(gen-osh-asdl)})
            (C {(gen-runtime-asdl)})
            (C {(pylibc)})
          ]
          spids: [411]
        )
      spids: [407 410]
    )
    (FuncDef
      name: all
      body: 
        (BraceGroup
          children: [(C {(minimal)}) (C {(build/codegen.sh)}) (C {(fastlex)})]
          spids: [454]
        )
      spids: [450 453]
    )
    (C {(DQ ($ VSub_At '$@'))})
  ]
)