(command.CommandList children: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<.>} {<'sources/utility_functions.sh'>}) (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<1>}) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<Id.Lit_LBracket '['>} {<-z>} {(DQ (${ Id.VSub_Name ARCHES))} {<Id.Lit_RBracket ']'>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:ARCHES) op: assign_op.Equal rhs: { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<ls>} {<'sources/targets'>}) ) ) } spids: [41] ) ] ) ] ) (command.ForEach iter_name: TARGET iter_words: [{($ Id.VSub_DollarName '$ARCHES')}] do_arg_iter: F body: (command.DoGroup children: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<Id.Lit_LBracket '['>} {<Id.KW_Bang '!'>} {<-f>} {(DQ <'sources/targets/'> ($ Id.VSub_DollarName '$TARGET'))} {<Id.Lit_RBracket ']'>} ) (command.ControlFlow token:<Id.ControlFlow_Continue continue>) ] ) (C {<announce>} {(DQ ($ Id.VSub_DollarName '$TARGET') <' running'>)}) (C {<maybe_fork>} {(DQ ($ Id.VSub_Star '$*') <' 2>&1 | maybe_quiet'>)}) ] ) ) (C {<wait>}) ] )