(CommandList
  children: [
    (C {(set)} {(-o)} {(nounset)})
    (C {(set)} {(-o)} {(pipefail)})
    (C {(set)} {(-o)} {(errexit)})
    (C {(source)} {(build/common.sh)})
    (FuncDef
      name: download-re2c
      body: 
        (BraceGroup
          children: [
            (C {(mkdir)} {(-p)} {(_deps)})
            (C {(wget)} {(--directory)} {(_deps)} 
              {(https) (Lit_Other ':') 
                (//github.com/skvadrik/re2c/releases/download/1.0.3/re2c-1.0.3.tar.gz)
              }
            )
          ]
          spids: [111]
        )
      spids: [107 110]
    )
    (FuncDef
      name: install-re2c
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(_deps)})
            (SimpleCommand
              words: [{(tar)} {(-x)} {(-z)}]
              redirects: [
                (Redir
                  op_id: Redir_Less
                  fd: 16777215
                  arg_word: {(re2c-1.0.3.tar.gz)}
                  spids: [154]
                )
              ]
            )
            (C {(cd)} {(re2c-1.0.3)})
            (C {(./configure)})
            (C {(make)})
          ]
          spids: [140]
        )
      spids: [136 139]
    )
    (FuncDef
      name: re2c
      body: 
        (BraceGroup
          children: [
            (Sentence
              child: (C {(_deps/re2c-1.0.3/re2c)} {(DQ ($ VSub_At '$@'))})
              terminator: <Op_Semi ';'>
            )
          ]
          spids: [176]
        )
      spids: [172 175]
    )
    (FuncDef
      name: ast-gen
      body: 
        (BraceGroup
          children: [
            (SimpleCommand
              words: [{(osh/ast_gen.py)} {(DQ ($ VSub_At '$@'))}]
              redirects: [
                (Redir
                  op_id: Redir_Great
                  fd: 16777215
                  arg_word: {(_devbuild/gen/osh-ast.h)}
                  spids: [204]
                )
              ]
              more_env: [(env_pair name:PYTHONPATH val:{(.)} spids:[195])]
            )
          ]
          spids: [192]
        )
      spids: [188 191]
    )
    (FuncDef
      name: id-gen
      body: 
        (BraceGroup
          children: [
            (SimpleCommand
              words: [{(core/id_kind_gen.py)} {(c)}]
              redirects: [
                (Redir
                  op_id: Redir_Great
                  fd: 16777215
                  arg_word: {(_devbuild/gen/id.h)}
                  spids: [225]
                )
              ]
              more_env: [(env_pair name:PYTHONPATH val:{(.)} spids:[218])]
            )
          ]
          spids: [215]
        )
      spids: [211 214]
    )
    (FuncDef
      name: lexer-gen
      body: 
        (BraceGroup
          children: [
            (Sentence
              child: 
                (SimpleCommand
                  words: [{(core/lexer_gen.py)} {(DQ ($ VSub_At '$@'))}]
                  more_env: [(env_pair name:PYTHONPATH val:{(.)} spids:[238])]
                )
              terminator: <Op_Semi ';'>
            )
          ]
          spids: [236]
        )
      spids: [232 235]
    )
    (FuncDef
      name: osh-lex-gen
      body: 
        (BraceGroup
          children: [
            (SimpleCommand
              words: [{(lexer-gen)} {(c)}]
              redirects: [
                (Redir
                  op_id: Redir_Great
                  fd: 16777215
                  arg_word: {(_devbuild/gen/osh-lex.re2c.h)}
                  spids: [268]
                )
              ]
            )
          ]
          spids: [261]
        )
      spids: [257 260]
    )
    (FuncDef
      name: print-regex
      body: 
        (BraceGroup
          children: [(Sentence child:(C {(lexer-gen)} {(print-regex)}) terminator:<Op_Semi ';'>)]
          spids: [279]
        )
      spids: [275 278]
    )
    (FuncDef
      name: print-all
      body: 
        (BraceGroup
          children: [(Sentence child:(C {(lexer-gen)} {(print-all)}) terminator:<Op_Semi ';'>)]
          spids: [292]
        )
      spids: [288 291]
    )
    (FuncDef
      name: osh-lex-gen-native
      body: 
        (BraceGroup
          children: [
            (C {(re2c)} {(-W)} {(-Wno-match-empty-string)} {(-Werror)} {(-o)} {(_devbuild/gen/osh-lex.h)} 
              {(_devbuild/gen/osh-lex.re2c.h)}
            )
          ]
          spids: [309]
        )
      spids: [305 308]
    )
    (FuncDef
      name: ast-id-lex
      body: 
        (BraceGroup
          children: [
            (C {(mkdir)} {(-p)} {(_devbuild/gen)})
            (C {(log)} {(DQ ('-- Generating AST, IDs, and lexer in _devbuild/gen'))})
            (C {(ast-gen)})
            (C {(id-gen)})
            (C {(osh-lex-gen)})
            (C {(osh-lex-gen-native)})
          ]
          spids: [350]
        )
      spids: [346 349]
    )
    (FuncDef
      name: bloaty
      body: 
        (BraceGroup
          children: [
            (Sentence
              child: (C {(TildeSubPart prefix:'') (/git/other/bloaty/bloaty)} {(DQ ($ VSub_At '$@'))})
              terminator: <Op_Semi ';'>
            )
          ]
          spids: [389]
        )
      spids: [385 388]
    )
    (FuncDef
      name: stats
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:obj)
                  op: Equal
                  rhs: {(_devbuild/py-ext/x86_64/fastlex.so)}
                  spids: [411]
                )
              ]
              spids: [409]
            )
            (C {(nm)} {($ VSub_Name '$obj')})
            (C {(echo)})
            (C {(bloaty)} {($ VSub_Name '$obj')})
            (C {(echo)})
            (C {(bloaty)} {(-d)} {(symbols)} {($ VSub_Name '$obj')})
            (C {(echo)})
            (C {(ls)} {(-l)} {($ VSub_Name '$obj')})
            (C {(echo)})
          ]
          spids: [406]
        )
      spids: [402 405]
    )
    (FuncDef
      name: gen-cpp
      body: 
        (BraceGroup
          children: [
            (SimpleCommand
              words: [{(asdl/gen_cpp.py)} {(cpp)} {(osh/osh.asdl)}]
              more_env: [(env_pair name:PYTHONPATH val:{(.)} spids:[492])]
            )
          ]
          spids: [489]
        )
      spids: [485 488]
    )
    (C {(DQ ($ VSub_At '$@'))})
  ]
)