(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OS) op: assign_op.Equal rhs: {<FreeBSD>} spids: [82] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:DOLLAR) op: assign_op.Equal rhs: {<Id.Lit_Dollar '$'>} spids: [85] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OBJCOPY) op: assign_op.Equal rhs: {<objcopy>} spids: [88] ) ] ) (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 119 stdin_parts: [ <'#\n'> <'# '> (${ Id.VSub_Name DOLLAR) (${ Id.VSub_Name OS) (${ Id.VSub_Name DOLLAR) <'\n'> <'#\n'> <'# This file was automatically generated by '> <Id.Right_DoubleQuote '"'> <'tools/tools/bus_autoconf/bus_autoconf.sh'> <Id.Right_DoubleQuote '"'> <'.\n'> <'# Please do not edit!\n'> <'#\n'> <'\n'> ] ) ) ] do_fork: T ) (C {<rm>} {<-f>} {<bus_autoconf_format.bin>}) (C {<rm>} {<-f>} {<bus_autoconf_args.txt>}) (C {<rm>} {<-f>} {<bus_autoconf.ids>}) (command.ForEach iter_name: F iter_words: [{($ Id.VSub_Star '$*')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:G) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<basename>} {(${ Id.VSub_Name F)}) ) } spids: [151] ) ] ) (command.Simple words: [ {(${ Id.VSub_Name OBJCOPY)} {<-j>} {<bus_autoconf_format>} {<-O>} {<binary>} {(${ Id.VSub_Name F)} {<bus_autoconf.ids>} ] redirects: [(redir op:<Id.Redir_Great '2>'> loc:(redir_loc.Fd fd:2) arg:{<'/dev/null'>})] do_fork: T ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<Id.Lit_LBracket '['>} {<-f>} {<bus_autoconf.ids>} {<Id.Lit_RBracket ']'>}) (command.Simple words: [{<cat>} {<bus_autoconf.ids>}] redirects: [ (redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: {<bus_autoconf_format.bin>} ) ] do_fork: T ) ] ) (command.Simple words: [ {(${ Id.VSub_Name OBJCOPY)} {<-j>} {<usb_host_id>} {<-O>} {<binary>} {(${ Id.VSub_Name F)} {(DQ <'usb_host_id,'> (${ Id.VSub_Name G))} ] redirects: [(redir op:<Id.Redir_Great '2>'> loc:(redir_loc.Fd fd:2) arg:{<'/dev/null'>})] do_fork: T ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<Id.Lit_LBracket '['>} {<-f>} {(DQ <'usb_host_id,'> (${ Id.VSub_Name G))} {<Id.Lit_RBracket ']'>} ) (command.Subshell child: (command.Simple words: [{<echo>} {<-n>} {(DQ <' -i usb_host_id,'> (${ Id.VSub_Name G))}] redirects: [ (redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: {<bus_autoconf_args.txt>} ) ] do_fork: T ) ) ] ) (command.Simple words: [ {(${ Id.VSub_Name OBJCOPY)} {<-j>} {<usb_device_id>} {<-O>} {<binary>} {(${ Id.VSub_Name F)} {(DQ <'usb_device_id,'> (${ Id.VSub_Name G))} ] redirects: [(redir op:<Id.Redir_Great '2>'> loc:(redir_loc.Fd fd:2) arg:{<'/dev/null'>})] do_fork: T ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<Id.Lit_LBracket '['>} {<-f>} {(DQ <'usb_device_id,'> (${ Id.VSub_Name G))} {<Id.Lit_RBracket ']'>} ) (command.Subshell child: (command.Simple words: [{<echo>} {<-n>} {(DQ <' -i usb_device_id,'> (${ Id.VSub_Name G))}] redirects: [ (redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: {<bus_autoconf_args.txt>} ) ] do_fork: T ) ) ] ) (command.Simple words: [ {(${ Id.VSub_Name OBJCOPY)} {<-j>} {<usb_dual_id>} {<-O>} {<binary>} {(${ Id.VSub_Name F)} {(DQ <'usb_dual_id,'> (${ Id.VSub_Name G))} ] redirects: [(redir op:<Id.Redir_Great '2>'> loc:(redir_loc.Fd fd:2) arg:{<'/dev/null'>})] do_fork: T ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<Id.Lit_LBracket '['>} {<-f>} {(DQ <'usb_dual_id,'> (${ Id.VSub_Name G))} {<Id.Lit_RBracket ']'>} ) (command.Subshell child: (command.Simple words: [{<echo>} {<-n>} {(DQ <' -i usb_dual_id,'> (${ Id.VSub_Name G))}] redirects: [ (redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: {<bus_autoconf_args.txt>} ) ] do_fork: T ) ) ] ) ] ) ) (C {<bus_autoconf>} {<-F>} {<bus_autoconf_format.bin>} {(command_sub left_token:<Id.Left_DollarParen '$('> child:(C {<cat>} {<bus_autoconf_args.txt>}))} ) (C {<rm>} {<-f>} {<-->} {(command_sub left_token:<Id.Left_DollarParen '$('> child:(C {<cat>} {<bus_autoconf_args.txt>}))} {<bus_autoconf_args.txt>} {<bus_autoconf_format.bin>} {<bus_autoconf.ids>} ) ] )