(List (Com {[LIT_CHARS set]} {[LIT_CHARS -e]} ) (AndOr OP_OR_IF (Com {[LIT_DBRACKET_LIKE "["]} {[ComSub (Com {[LIT_CHARS id]} {[LIT_CHARS -u]})]} {[LIT_CHARS -eq]} {[LIT_CHARS 0]} {[LIT_DBRACKET_LIKE "]"]} ) (List (Com {[LIT_CHARS printf]} {[SQ ]} {[DQ [VarSub 0]]} < (DescriptorRedirectNode target={[LIT_CHARS 2]} &"> 1), > ) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]} ) ) ) (FunctionDef usage [] (List (Com {[LIT_CHARS printf]} {[SQ ]} {[DQ [VarSub 0]]} < (DescriptorRedirectNode target={[LIT_CHARS 2]} &"> 1), > ) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]} ) ) ) (FunctionDef tmp [] (List (= scope= flags=0 words=[] bindings=[('TMP', {[ComSub (Com {[LIT_CHARS mktemp]} {[LIT_CHARS -d]} {[VarSub TMPDIR test_op=VS_TEST_COLON_HYPHEN {[LIT_SLASH /] [LIT_CHARS var] [LIT_SLASH /] [LIT_CHARS tmp]}] [LIT_CHARS /alpine-docker-XXXXXXXXXX]})]})]) (= scope= flags=0 words=[] bindings=[('ROOTFS', {[ComSub (Com {[LIT_CHARS mktemp]} {[LIT_CHARS -d]} {[VarSub TMPDIR test_op=VS_TEST_COLON_HYPHEN {[LIT_SLASH /] [LIT_CHARS var] [LIT_SLASH /] [LIT_CHARS tmp]}] [LIT_CHARS /alpine-docker-rootfs-XXXXXXXXXX]})]})]) (Com {[LIT_CHARS trap]} {[DQ [LIT_CHARS "rm -rf "][VarSub TMP][LIT_CHARS " "][VarSub ROOTFS]]} {[LIT_CHARS EXIT]} {[LIT_CHARS TERM]} {[LIT_CHARS INT]} ) ) ) (FunctionDef apkv [] (Pipeline (Com {[LIT_CHARS curl]} {[LIT_CHARS -sSL]} {[VarSub REPO] [LIT_CHARS /] [VarSub ARCH] [LIT_CHARS /APKINDEX.tar.gz]} ) (Com {[LIT_CHARS tar]} {[LIT_CHARS -Oxz]} ) (Com {[LIT_CHARS grep]} {[SQ ]} {[LIT_CHARS -A1]} ) (Com {[LIT_CHARS tail]} {[LIT_CHARS -n1]} ) (Com {[LIT_CHARS cut]} {[LIT_CHARS -d] [LIT_OTHER ":"]} {[LIT_CHARS -f2]} ) ) ) (FunctionDef getapk [] (Pipeline (Com {[LIT_CHARS curl]} {[LIT_CHARS -sSL]} {[VarSub REPO] [LIT_CHARS /] [VarSub ARCH] [LIT_CHARS /apk-tools-static-] [ComSub (Com {[LIT_CHARS apkv]})] [LIT_CHARS .apk]} ) (Com {[LIT_CHARS tar]} {[LIT_CHARS -xz]} {[LIT_CHARS -C]} {[VarSub TMP]} {[LIT_CHARS sbin/apk.static]} ) ) ) (FunctionDef mkbase [] (Com {[VarSub TMP] [LIT_CHARS /sbin/apk.static]} {[LIT_CHARS --repository]} {[VarSub REPO]} {[LIT_CHARS --update-cache]} {[LIT_CHARS --allow-untrusted]} {[LIT_CHARS --root]} {[VarSub ROOTFS]} {[LIT_CHARS --initdb]} {[LIT_CHARS add]} {[LIT_CHARS alpine-base]} ) ) (FunctionDef conf [] (Com {[LIT_CHARS printf]} {[SQ ]} {[VarSub REPO]} < (FilenameRedirectNode filename={[VarSub ROOTFS] [LIT_CHARS /etc/apk/repositories]} "> 1), > ) ) (FunctionDef pack [] (List (= scope= flags=0 words=[{[LIT_CHARS id]}] bindings=[]) (= scope= flags=0 words=[] bindings=[('id', {[ComSub (Pipeline (Com {[LIT_CHARS tar]} {[LIT_CHARS --numeric-owner]} {[LIT_CHARS -C]} {[VarSub ROOTFS]} {[LIT_CHARS -c]} {[LIT_CHARS .]}) (Com {[LIT_CHARS docker]} {[LIT_CHARS import]} {[LIT_CHARS -]} {[LIT_CHARS alpine] [LIT_OTHER ":"] [VarSub REL]}) )]})]) (Com {[LIT_CHARS docker]} {[LIT_CHARS tag]} {[VarSub id]} {[LIT_CHARS alpine] [LIT_OTHER ":"] [LIT_CHARS latest]} ) (Com {[LIT_CHARS docker]} {[LIT_CHARS run]} {[LIT_CHARS -i]} {[LIT_CHARS -t]} {[LIT_CHARS alpine]} {[LIT_CHARS printf]} {[SQ ]} {[VarSub REL]} {[VarSub id]} ) ) ) (FunctionDef save [] (List (AndOr OP_OR_IF (Com {[LIT_DBRACKET_LIKE "["]} {[VarSub SAVE]} {[LIT_CHARS -eq]} {[LIT_CHARS 1]} {[LIT_DBRACKET_LIKE "]"]} ) (Com {[LIT_CHARS return]} ) ) (Pipeline (Com {[LIT_CHARS tar]} {[LIT_CHARS --numeric-owner]} {[LIT_CHARS -C]} {[VarSub ROOTFS]} {[LIT_CHARS -c]} {[LIT_CHARS .]} ) (Com {[LIT_CHARS xz]} < (FilenameRedirectNode filename={[LIT_CHARS rootfs.tar.xz]} "> 1), > ) ) ) ) (While (Com {[LIT_CHARS getopts]} {[DQ [LIT_CHARS "hr:m:s"]]} {[LIT_CHARS opt]} ) (Case to_match={[VarSub opt]}, pat_word_list=[[{[LIT_CHARS r]}], [{[LIT_CHARS m]}], [{[LIT_CHARS s]}], [{[LIT_OTHER "*"]}]] (= scope= flags=0 words=[] bindings=[('REL', {[VarSub OPTARG]})]) (= scope= flags=0 words=[] bindings=[('MIRROR', {[VarSub OPTARG]})]) (= scope= flags=0 words=[] bindings=[('SAVE', {[LIT_CHARS 1]})]) (Com {[LIT_CHARS usage]} ) ) ) (= scope= flags=0 words=[] bindings=[('REL', {[VarSub REL test_op=VS_TEST_COLON_HYPHEN {[LIT_CHARS edge]}]})]) (= scope= flags=0 words=[] bindings=[('MIRROR', {[VarSub MIRROR test_op=VS_TEST_COLON_HYPHEN {[LIT_CHARS "http:"] [LIT_SLASH /] [LIT_SLASH /] [LIT_CHARS nl.alpinelinux.org] [LIT_SLASH /] [LIT_CHARS alpine]}]})]) (= scope= flags=0 words=[] bindings=[('SAVE', {[VarSub SAVE test_op=VS_TEST_COLON_HYPHEN {[LIT_CHARS 0]}]})]) (= scope= flags=0 words=[] bindings=[('REPO', {[VarSub MIRROR] [LIT_CHARS /] [VarSub REL] [LIT_CHARS /main]})]) (= scope= flags=0 words=[] bindings=[('ARCH', {[ComSub (Com {[LIT_CHARS uname]} {[LIT_CHARS -m]})]})]) (Com {[LIT_CHARS tmp]} ) (Com {[LIT_CHARS getapk]} ) (Com {[LIT_CHARS mkbase]} ) (Com {[LIT_CHARS conf]} ) (Com {[LIT_CHARS pack]} ) (Com {[LIT_CHARS save]} ) )