(CommandList
  children: [
    (C {(set)} {(-o)} {(nounset)})
    (C {(set)} {(-o)} {(pipefail)})
    (C {(set)} {(-o)} {(errexit)})
    (C {(source)} {(build/common.sh)})
    (FuncDef
      name: replace-print
      body: 
        (BraceGroup
          children: [
            (C {(grep)} {(SQ <'print '>)} 
              (BracedWordTree
                parts: [(BracedAltPart words:[{(osh)} {(core)}]) (/) (Lit_Other '*') (.py)]
              )
            )
          ]
          spids: [53]
        )
      spids: [49 52]
    )
    (FuncDef
      name: make-bin-links
      body: 
        (BraceGroup
          children: [
            (C {(mkdir)} {(-p)} {(bin)} {(_bin)})
            (ForEach
              iter_name: link
              iter_words: [
                {
                  (DQ 
                    (BracedVarSub
                      token: <VSub_Name OIL_SYMLINKS>
                      bracket_op: (WholeArray op_id:Lit_At)
                      spids: [114 119]
                    )
                  )
                }
              ]
              do_arg_iter: F
              body: 
                (DoGroup
                  children: [
                    (C {(ln)} {(-s)} {(-f)} {(--verbose)} {(oil.py)} {(bin/) ($ VSub_Name '$link')})
                  ]
                  spids: [123 140]
                )
              spids: [112 121]
            )
            (ForEach
              iter_name: link
              iter_words: [
                {
                  (DQ 
                    (BracedVarSub
                      token: <VSub_Name OIL_SYMLINKS>
                      bracket_op: (WholeArray op_id:Lit_At)
                      spids: [151 156]
                    )
                  )
                }
              ]
              do_arg_iter: F
              body: 
                (DoGroup
                  children: [
                    (C {(ln)} {(-s)} {(-f)} {(--verbose)} {(oil.ovm)} {(_bin/) ($ VSub_Name '$link')})
                  ]
                  spids: [160 177]
                )
              spids: [149 158]
            )
          ]
          spids: [86]
        )
      spids: [82 85]
    )
    (FuncDef
      name: grep-unicode
      body: 
        (BraceGroup
          children: [
            (SimpleCommand
              words: [
                {(grep)}
                {(--color) (Lit_Other '=') (SQ <auto>)}
                {(--perl)}
                {(-n)}
                {(SQ <'[^\\x00-\\x7F]'>)}
                {(DQ ($ VSub_At '$@'))}
              ]
              more_env: [(env_pair name:LC_ALL val:{(C)} spids:[199])]
            )
          ]
          spids: [196]
        )
      spids: [192 195]
    )
    (C {(DQ ($ VSub_At '$@'))})
  ]
)