(CommandList children: [ (C {(set)} {(-o)} {(nounset)}) (C {(set)} {(-o)} {(pipefail)}) (C {(set)} {(-o)} {(errexit)}) (FuncDef name: deps body: (BraceGroup children: [(C {(sudo)} {(apt)} {(install)} {(systemtap)} {(systemtap-sdt-dev)})] spids: [66] ) spids: [62 65] ) (FuncDef name: stap-deps body: (BraceGroup children: [(C {(sudo)} {(apt)} {(install)} {(libdw-dev)} {(libdw1)})] spids: [90] ) spids: [86 89] ) (FuncDef name: download body: (BraceGroup children: [ (C {(wget)} {(--no-clobber)} {(--directory)} {(_tmp)} {(https) (Lit_Other ':') (//sourceware.org/systemtap/ftp/releases/systemtap-3.1.tar.gz)} ) ] spids: [117] ) spids: [113 116] ) (FuncDef name: extract body: (BraceGroup children: [ (C {(cd)} {(_tmp)}) (SimpleCommand words: [{(tar)} {(-x)} {(-z)}] redirects: [ (Redir op_id: Redir_Less fd: 16777215 arg_word: {(systemtap-3.1.tar.gz)} spids: [155] ) ] ) ] spids: [141] ) spids: [137 140] ) (Assignment keyword: Assign_Readonly pairs: [ (assign_pair lhs: (LhsName name:PY36) op: Equal rhs: {(TildeSubPart prefix:'') (/src/languages/Python-3.6.1)} spids: [164] ) ] spids: [162] ) (FuncDef name: build-python body: (BraceGroup children: [ (C {(pushd)} {($ VSub_Name '$PY36')}) (C {(./configure)} {(--with-dtrace)}) (C {(make)} {(-j)} {(7)}) (C {(popd)}) ] spids: [173] ) spids: [169 172] ) (FuncDef name: elf body: (BraceGroup children: [ (C {(readelf)} {(-n)} { (CommandSubPart command_list: (CommandList children:[(C {(which)} {(python3)})]) left_token: <Left_CommandSub '$('> spids: [216 220] ) } ) (C {(echo)} {(---)}) (C {(readelf)} {(-n)} {($ VSub_Name '$PY36') (/python)}) ] spids: [209] ) spids: [205 208] ) (FuncDef name: _demo body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:stp) op: Equal rhs: {(DQ ($ VSub_Name '$PY36') (/Lib/test/dtracedata/gc.stp))} spids: [264] ) ] spids: [262] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:py) op: Equal rhs: {(DQ ($ VSub_Name '$PWD') (/test/sh_spec.py))} spids: [278] ) ] spids: [276] ) (C {(pushd)} {($ VSub_Name '$PY36')}) (C {(stap)} {(-v)} {($ VSub_Name '$stp')} {(-c)} {(DQ ('./python ') ($ VSub_Name '$py'))}) (C {(popd)}) ] spids: [246] ) spids: [242 245] ) (FuncDef name: demo body: (BraceGroup children: [ (Sentence child: (C {(sudo)} {($ VSub_Number '$0')} {(_demo)}) terminator: <Op_Semi ';'> ) ] spids: [313] ) spids: [309 312] ) (C {(DQ ($ VSub_At '$@'))}) ] )