(CommandList children: [ (Sentence child: (C {(.)} { (DQ (BracedVarSub token: <VSub_Name srcdir> suffix_op: (StringUnary op_id:VTest_Equals arg_word:{(.)}) spids: [47 51] ) (/tests/init.sh) ) } ) terminator: <Op_Semi ';'> ) (C {(path_prepend_)} {(./src)}) (C {(print_ver_)} {(ls)}) (C {(require_setfacl_)}) (AndOr ops:[Op_DPipe] children:[(C {(touch)} {(k)}) (C {(framework_failure_)})]) (AndOr ops: [Op_DPipe] children: [ (C {(setfacl)} {(-m)} {(user) (Lit_Other ':') (Lit_Other ':') (r--)} {(k)}) (C {(framework_failure_)}) ] ) (AndOr ops:[Op_DPipe] children:[(C {(ln)} {(-s)} {(k)} {(s)}) (C {(framework_failure_)})]) (Sentence child: (C {(set)} {(_)} { (CommandSubPart command_list: (CommandList children:[(C {(ls)} {(-Log)} {(s)})]) left_token: <Left_CommandSub '$('> spids: [108 114] ) } ) terminator: <Op_Semi ';'> ) (Sentence child:(C {(shift)}) terminator:<Op_Semi ';'>) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:link) op:Equal rhs:{($ VSub_Number '$1')} spids:[120])] spids: [120] ) (Sentence child: (C {(set)} {(_)} { (CommandSubPart command_list: (CommandList children:[(C {(ls)} {(-og)} {(k)})]) left_token: <Left_CommandSub '$('> spids: [127 133] ) } ) terminator: <Op_Semi ';'> ) (Sentence child:(C {(shift)}) terminator:<Op_Semi ';'>) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:reg) op:Equal rhs:{($ VSub_Number '$1')} spids:[139])] spids: [139] ) (AndOr ops: [Op_DPipe] children: [ (C {(test)} {(DQ ($ VSub_Name '$link'))} {(Lit_Other '=')} {(DQ ($ VSub_Name '$reg'))}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[157])] spids: [157] ) ] ) (C {(Exit)} {($ VSub_Name '$fail')}) ] )