(CommandList children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:QEMU_IMAGE) op: Equal rhs: {(linuxkit/qemu) (Lit_Other ":") (4563d58e97958f4941fbef9e74cabc08bd402144) (Lit_Other "@") (sha256) (Lit_Other ":") (b2db0b13ba1cbb6b48218f088fe0a4d860e1db2c4c6381b5416536f48a612230) } spids: [4] ) ] spids: [4] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other "[")} {(KW_Bang "!")} {(-t)} {(0)} {(-a)} {(-z)} {(DQ ($ VSub_Number "$1"))} {(Lit_Other "]")} ) ] action: [ (C {(docker)} {(run)} {(-i)} {(--rm)} {(DQ ($ VSub_Name "$QEMU_IMAGE"))}) (C {(exit)} {($ VSub_QMark "$?")}) ] spids: [-1 37] ) ] spids: [-1 61] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:FILE) op:Equal rhs:{($ VSub_Number "$1")} spids:[64])] spids: [64] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:FILE2) op:Equal rhs:{($ VSub_Number "$2")} spids:[67])] spids: [67] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:CMDLINE) op:Equal rhs:{($ VSub_Number "$3")} spids:[70])] spids: [70] ) (AndOr children: [ (C {(Lit_Other "[")} {(-z)} {(DQ ($ VSub_Name "$FILE"))} {(Lit_Other "]")}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FILE) op: Equal rhs: {(DQ ($ VSub_Name "$PWD") (/moby))} spids: [85] ) ] spids: [85] ) ] op_id: Op_DAmp ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:BASE) op: Equal rhs: { (CommandSubPart command_list: (CommandList children:[(C {(basename)} {(DQ ($ VSub_Name "$FILE"))})]) left_token: <Left_CommandSub "$("> spids: [93 99] ) } spids: [92] ) ] spids: [92] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:DIR) op: Equal rhs: { (CommandSubPart command_list: (CommandList children:[(C {(dirname)} {(DQ ($ VSub_Name "$FILE"))})]) left_token: <Left_CommandSub "$("> spids: [102 108] ) } spids: [101] ) ] spids: [101] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other "[")} {(KW_Bang "!")} {(-f)} {(DQ ($ VSub_Name "$FILE"))} {(-a)} {(-f)} {($ VSub_Name "$DIR") (/) ($ VSub_Name "$BASE") (-initrd.img)} {(-a)} {(-f)} {($ VSub_Name "$DIR") (/) ($ VSub_Name "$BASE") (-bzImage)} {(Lit_Other "]")} ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FILE) op: Equal rhs: {($ VSub_Name "$DIR") (/) ($ VSub_Name "$BASE") (-initrd.img)} spids: [145] ) ] spids: [145] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FILE2) op: Equal rhs: {($ VSub_Name "$DIR") (/) ($ VSub_Name "$BASE") (-bzImage)} spids: [152] ) ] spids: [152] ) ] spids: [-1 142] ) ] spids: [-1 158] ) (AndOr children: [ (Pipeline children: [(C {(echo)} {(DQ ($ VSub_Name "$FILE"))}) (C {(grep)} {(-q)} {(SQ <"^/">)})] negated: False ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FILE) op: Equal rhs: {(DQ ($ VSub_Name "$PWD") (/) ($ VSub_Name "$FILE"))} spids: [179] ) ] spids: [179] ) ] op_id: Op_DPipe ) (If arms: [ (if_arm cond: [ (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} {(DQ ($ VSub_Name "$FILE2"))} {(Lit_Other "]")}) ] action: [ (AndOr children: [ (Pipeline children: [(C {(echo)} {(DQ ($ VSub_Name "$FILE2"))}) (C {(grep)} {(-q)} {(SQ <"^/">)})] negated: False ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FILE2) op: Equal rhs: {(DQ ($ VSub_Name "$PWD") (/) ($ VSub_Name "$FILE2"))} spids: [221] ) ] spids: [221] ) ] op_id: Op_DPipe ) ] spids: [-1 200] ) ] spids: [-1 228] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} {(DQ ($ VSub_Name "$CMDLINE"))} {(Lit_Other "]")}) ] action: [ (AndOr children: [ (Pipeline children: [ (C {(echo)} {(DQ ($ VSub_Name "$CMDLINE"))}) (C {(grep)} {(-q)} {(SQ <"^/">)}) ] negated: False ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CMDLINE) op: Equal rhs: {(DQ ($ VSub_Name "$PWD") (/) ($ VSub_Name "$CMDLINE"))} spids: [265] ) ] spids: [265] ) ] op_id: Op_DPipe ) ] spids: [-1 244] ) ] spids: [-1 272] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {(-c)} {(DQ (/dev/kvm))} {(Lit_Other "]")}) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:DEVKVM) op: Equal rhs: {(DQ ("--device=/dev/kvm"))} spids: [292] ) ] spids: [292] ) ] spids: [-1 289] ) ] spids: [-1 297] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:BASE) op: Equal rhs: { (CommandSubPart command_list: (CommandList children:[(C {(basename)} {(DQ ($ VSub_Name "$FILE"))})]) left_token: <Left_CommandSub "$("> spids: [300 306] ) } spids: [299] ) ] spids: [299] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:MOUNTS) op: Equal rhs: {(DQ ("-v ") ($ VSub_Name "$FILE") (":/tmp/") ($ VSub_Name "$BASE"))} spids: [308] ) ] spids: [308] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:BASE2) op: Equal rhs: { (CommandSubPart command_list: (CommandList children:[(C {(basename)} {(DQ ($ VSub_Name "$FILE2"))})]) left_token: <Left_CommandSub "$("> spids: [317 323] ) } spids: [316] ) ] spids: [316] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:BASE3) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(basename)} {(DQ ($ VSub_Name "$CMDLINE"))})] ) left_token: <Left_CommandSub "$("> spids: [326 332] ) } spids: [325] ) ] spids: [325] ) (AndOr children: [ (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} {(DQ ($ VSub_Name "$FILE2"))} {(Lit_Other "]")}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:MOUNTS) op: Equal rhs: { (DQ ($ VSub_Name "$MOUNTS") (" -v ") ($ VSub_Name "$FILE2") (":/tmp/") ($ VSub_Name "$BASE2") ) } spids: [349] ) ] spids: [349] ) ] op_id: Op_DAmp ) (AndOr children: [ (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} {(DQ ($ VSub_Name "$CMDLINE"))} {(Lit_Other "]")}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:MOUNTS) op: Equal rhs: { (DQ ($ VSub_Name "$MOUNTS") (" -v ") ($ VSub_Name "$CMDLINE") (":/tmp/") ($ VSub_Name "$BASE3") ) } spids: [372] ) ] spids: [372] ) ] op_id: Op_DAmp ) (C {(docker)} {(run)} {(-it)} {(--rm)} {($ VSub_Name "$MOUNTS")} {($ VSub_Name "$DEVKVM")} {(DQ ($ VSub_Name "$QEMU_IMAGE"))} ) ] )