(List (= scope= flags=0 words=[] bindings=[('IFS', {[SQ ]}), ('VERSION', {[LIT_CHARS 3.0.0-bashcached]})]) (= scope= flags=1 words=[] bindings=[('LANG', {[LIT_CHARS C]})]) (If (DBracket {B1 UNARY_FILE_p {[DQ [VarSub BASHCACHED_PIPE]]}}) (List (= scope= flags=0 words=[] bindings=[('send', {[DQ [ComSub (Com {[LIT_CHARS mktemp]} {[LIT_CHARS -u]})]]})]) (Com {[LIT_CHARS mkfifo]} {[LIT_CHARS -m]} {[LIT_CHARS 600]} {[DQ [VarSub send]]}) (= scope= flags=0 words=[] bindings=[('recv', {[DQ [ComSub (Com {[LIT_CHARS mktemp]} {[LIT_CHARS -u]})]]})]) (Com {[LIT_CHARS mkfifo]} {[LIT_CHARS -m]} {[LIT_CHARS 600]} {[DQ [VarSub recv]]}) (Fork (While (DBracket {B1 UNARY_FILE_p {[DQ [VarSub recv]]}}) (Com {[LIT_CHARS cat]} {[DQ [VarSub recv]]}) ) ) (Com {[LIT_CHARS trap]} {[SQ ] [DQ [VarSub recv]] [SQ ] [DQ [VarSub send]] [SQ ]} {[LIT_CHARS EXIT]}) (= scope= flags=0 words=[] bindings=[('recv64', {[DQ [ComSub (Pipeline (Com {[LIT_CHARS echo]} {[DQ [VarSub recv]]}) (Com {[LIT_CHARS base64]} {[LIT_CHARS -w0]}) )]]}), ('send64', {[DQ [ComSub (Pipeline (Com {[LIT_CHARS echo]} {[DQ [VarSub send]]}) (Com {[LIT_CHARS base64]} {[LIT_CHARS -w0]}) )]]})]) (While (Com {[LIT_CHARS read]} {[LIT_CHARS -ra]} {[LIT_CHARS cmd]}) (Case to_match={[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 0]}})]}, pat_word_list=[[{[LIT_CHARS set]}, {[LIT_CHARS add]}, {[LIT_CHARS replace]}, {[LIT_CHARS append]}, {[LIT_CHARS prepend]}, {[LIT_CHARS cas]}], [{[LIT_CHARS quit]}], [{[LIT_OTHER "*"]}]] (List (While (Com {[LIT_CHARS true]}) (AndOr OP_AND_IF (Com {[LIT_CHARS printf]} {[SQ ]} {[VarSub recv64]} {[VarSub send64]} {[DQ [VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_STAR "*"}})]]} < (FilenameRedirectNode filename={[DQ [VarSub BASHCACHED_PIPE]]} "> 1), (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2), > ) (Com {[LIT_CHARS break]}) ) ) (Com {[LIT_CHARS head]} {[LIT_CHARS -c]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 4]}}) test_op=VS_TEST_HYPHEN {[LIT_CHARS 0]}]} < (FilenameRedirectNode filename={[DQ [VarSub send]]} "> 1), > ) ) (Com {[LIT_CHARS exit]}) (While (Com {[LIT_CHARS true]}) (AndOr OP_AND_IF (Com {[LIT_CHARS printf]} {[SQ ]} {[VarSub recv64]} {[VarSub send64]} {[DQ [VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_STAR "*"}})]]} < (FilenameRedirectNode filename={[DQ [VarSub BASHCACHED_PIPE]]} "> 1), (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2), > ) (Com {[LIT_CHARS break]}) ) ) ) ) ) (ElseTrue) (List (FunctionDef help [] (List (Pipeline (Com {[LIT_CHARS cat]} {[VarSub 0]}) (Com {[LIT_CHARS tail]} {[LIT_CHARS -n] [LIT_OTHER "+"] [LIT_CHARS 2]}) (Com {[LIT_CHARS head]} {[LIT_CHARS -n11]}) (Com {[LIT_CHARS cut]} {[LIT_CHARS -c3-]}) ) (Com {[LIT_CHARS exit]}) ) ) (FunctionDef version [] (List (Com {[LIT_CHARS echo]} {[VarSub VERSION]}) (Com {[LIT_CHARS exit]}) ) ) (For v [{[DQ [VarSub @]]}]) (Com {[LIT_CHARS eval]} {[DQ [VarSub v transform_ops=[Slice {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 2]}} None]]]}) ) (= scope= flags=0 words=[] bindings=[('unique', {[LIT_CHARS 0]}), ('before', {[ComSub (Com {[LIT_CHARS date]} {[LIT_OTHER "+"] [LIT_OTHER "%"] [LIT_CHARS s]})]})]) (= scope= flags=0 words=[{[LIT_CHARS -A]}] bindings=[('flags', {[Array ]}), ('exptime', {[Array ]}), ('casUnique', {[Array ]}), ('data', {[Array ]})]) (FunctionDef cache_has [] (AndOr OP_AND_IF (= scope= flags=0 words=[] bindings=[('t', {[VarSub exptime bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub 1]}})]})]) (DBracket {B? LOGICAL_BINARY_AND {B1 UNARY_STRING_n {[VarSub t]}} {B? LOGICAL_BINARY_OR {B2 BINARY_INT_EQ {[VarSub t]} {[LIT_CHARS 0]}} {B2 BINARY_INT_GT {[VarSub t]} {[VarSub time]}}}}) ) ) (FunctionDef cache_set [] (List (Com {[LIT_CHARS flags] [LIT_OTHER "["] [VarSub 1] [LIT_OTHER "]"] [LIT_OTHER "="] [VarSub 2]} {[LIT_CHARS data] [LIT_OTHER "["] [VarSub 1] [LIT_OTHER "]"] [LIT_OTHER "="] [VarSub 4]}) (Com {[LIT_CHARS exptime] [LIT_OTHER "["] [VarSub 1] [LIT_OTHER "]"] [LIT_OTHER "="] [ArithSub {A3 AS_OP_QMARK {A2 AS_OP_DAMP {A2 AS_OP_LESS {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 0]}} {A Atom NODE_ARITH_WORD {[VarSub 3]}}} {A2 AS_OP_LE {A Atom NODE_ARITH_WORD {[VarSub 3]}} {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 2592000]}}}} {A2 AS_OP_PLUS {A Atom NODE_ARITH_WORD {[VarSub 3]}} {A Atom NODE_ARITH_WORD {[VarSub time]}}} {A Atom NODE_ARITH_WORD {[VarSub 3]}}}]}) (AndOr OP_AND_IF (DBracket {B1 UNARY_STRING_n {[VarSub 5]}}) (AndOr OP_OR_IF (Com {[LIT_CHARS casUnique] [LIT_OTHER "["] [VarSub 1] [LIT_OTHER "]"] [LIT_OTHER "="] [VarSub 5]}) (Com {[LIT_CHARS casUnique] [LIT_OTHER "["] [VarSub 1] [LIT_OTHER "]"] [LIT_OTHER "="] [ArithSub {A1 AS_OP_DPLUS {A Atom NODE_ARITH_WORD {[VarSub unique]}} }]}) ) ) ) ) (FunctionDef cache_get [] (AndOr OP_AND_IF (Com {[LIT_CHARS cache_has]} {[VarSub 1]}) (AndOr OP_AND_IF (= scope= flags=0 words=[] bindings=[('d', {[VarSub data bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub 1]}})]})]) (AndOr OP_AND_IF (Com {[LIT_CHARS printf]} {[SQ ]} {[VarSub 1]} {[VarSub flags bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub 1]}})]} {[ComSub (Pipeline (Com {[LIT_CHARS echo]} {[LIT_CHARS -n]} {[VarSub d]}) (Com {[LIT_CHARS base64]} {[LIT_CHARS -d]}) (Com {[LIT_CHARS wc]} {[LIT_CHARS -c]}) )]} {[DQ [ComSub (AndOr OP_AND_IF (DBracket {B1 UNARY_STRING_n {[VarSub 2]}}) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " "][VarSub casUnique bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub 1]}})]]}) )]]}) (AndOr OP_AND_IF (Pipeline (Com {[LIT_CHARS echo]} {[LIT_CHARS -n]} {[VarSub d]}) (Com {[LIT_CHARS base64]} {[LIT_CHARS -d]}) ) (Com {[LIT_CHARS echo]} {[LIT_CHARS -e]} {[SQ ]}) ) ) ) ) ) (FunctionDef cache_delete [] (Com {[LIT_CHARS unset]} {[LIT_CHARS flags] [LIT_OTHER "["] [VarSub 1] [LIT_OTHER "]"]} {[LIT_CHARS exptime] [LIT_OTHER "["] [VarSub 1] [LIT_OTHER "]"]} {[LIT_CHARS casUnique] [LIT_OTHER "["] [VarSub 1] [LIT_OTHER "]"]} {[LIT_CHARS data] [LIT_OTHER "["] [VarSub 1] [LIT_OTHER "]"]}) ) (FunctionDef read_data [] (= scope= flags=0 words=[] bindings=[('d', {[ComSub (Pipeline (Com {[LIT_CHARS head]} {[LIT_CHARS -c]} {[VarSub 1]} {[DQ [VarSub send]]}) (Com {[LIT_CHARS base64]} {[LIT_CHARS -w0]}) )]})]) ) (FunctionDef base64_cat [] (Pipeline (Com {[LIT_CHARS cat]} {[ComSub (Pipeline (Com {[LIT_CHARS echo]} {[LIT_CHARS -n]} {[VarSub 1]}) (Com {[LIT_CHARS base64]} {[LIT_CHARS -d]}) )]} {[ComSub (Pipeline (Com {[LIT_CHARS echo]} {[LIT_CHARS -n]} {[VarSub 2]}) (Com {[LIT_CHARS base64]} {[LIT_CHARS -d]}) )]}) (Com {[LIT_CHARS base64]} {[LIT_CHARS -w0]}) ) ) (= scope= flags=1 words=[] bindings=[('BASHCACHED_PIPE', {[DQ [ComSub (Com {[LIT_CHARS mktemp]} {[LIT_CHARS -u]})]]})]) (Com {[LIT_CHARS mkfifo]} {[LIT_CHARS -m]} {[LIT_CHARS 600]} {[DQ [VarSub BASHCACHED_PIPE]]}) (Com {[LIT_CHARS trap]} {[SQ ] [DQ [VarSub BASHCACHED_PIPE]] [SQ ]} {[LIT_CHARS EXIT]}) (Fork (Com {[LIT_CHARS socat]} {[VarSub protocol test_op=VS_TEST_HYPHEN {[LIT_CHARS tcp]}] [LIT_CHARS -listen] [LIT_OTHER ":"] [VarSub address test_op=VS_TEST_HYPHEN {[LIT_CHARS 25252]}] [LIT_COMMA ","] [LIT_CHARS fork]} {[LIT_CHARS system] [LIT_OTHER ":"] [DQ [VarSub 0]]}) ) (Fork (While (Com {[LIT_CHARS echo]}) (Com {[LIT_CHARS sleep]} {[VarSub check test_op=VS_TEST_HYPHEN {[LIT_CHARS 60]}]}) ) ) (Pipeline (While (Com {[LIT_CHARS true]}) (Com {[LIT_CHARS cat]} {[DQ [VarSub BASHCACHED_PIPE]]}) ) (While (Com {[LIT_CHARS read]} {[LIT_CHARS -ra]} {[LIT_CHARS cmd]}) (List (= scope= flags=0 words=[] bindings=[('recv', {[DQ [ComSub (Pipeline (Com {[LIT_CHARS echo]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 0]}})]}) (Com {[LIT_CHARS base64]} {[LIT_CHARS -d]}) )]]}), ('send', {[DQ [ComSub (Pipeline (Com {[LIT_CHARS echo]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}) (Com {[LIT_CHARS base64]} {[LIT_CHARS -d]}) )]]})]) (= scope= flags=0 words=[] bindings=[('cmd', {[Array {[DQ [VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}}) transform_ops=[Slice {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 2]}} None]]]}]}), ('time', {[ComSub (Com {[LIT_CHARS date]} {[LIT_OTHER "+"] [LIT_OTHER "%"] [LIT_CHARS s]})]})]) (AndOr OP_AND_IF (DParen {A2 AS_OP_GE {A2 AS_OP_MINUS {A Atom NODE_ARITH_WORD {[VarSub time]}} {A Atom NODE_ARITH_WORD {[VarSub before]}}} {A Atom NODE_ARITH_WORD {[VarSub check test_op=VS_TEST_HYPHEN {[LIT_CHARS 60]}]}}}) (AndOr OP_AND_IF (For k [{[VarSub exptime bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}}) transform_ops=[(!ref)]]}]) (AndOr OP_AND_IF (Pipeline! (Com {[LIT_CHARS cache_has]} {[VarSub k]}) ) (Com {[LIT_CHARS cache_delete]} {[VarSub k]}) ) ) (= scope= flags=0 words=[] bindings=[('before', {[VarSub time]})]) ) ) (AndOr OP_AND_IF (DBracket {B? LOGICAL_BINARY_OR {B! {B1 UNARY_FILE_p {[VarSub recv]}}} {B! {B1 UNARY_FILE_p {[VarSub send]}}}}) (Com {[LIT_CHARS continue]}) ) (Case to_match={[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 0]}})]}, pat_word_list=[[{[LIT_CHARS set]}], [{[LIT_CHARS add]}], [{[LIT_CHARS replace]}], [{[LIT_CHARS append]}], [{[LIT_CHARS prepend]}], [{[LIT_CHARS cas]}], [{[LIT_CHARS get]}], [{[LIT_CHARS gets]}], [{[LIT_CHARS delete]}], [{[LIT_CHARS incr]}], [{[LIT_CHARS decr]}], [{[LIT_CHARS touch]}], [{[LIT_CHARS flush_all]}], [{[LIT_CHARS version]}]] (List (AndOr OP_OR_IF (Com {[LIT_CHARS read_data]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 4]}})]}) (Com {[LIT_CHARS return]} {[LIT_CHARS 1]}) ) (Com {[LIT_CHARS cache_set]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 2]}})]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 3]}})]} {[VarSub d]}) (AndOr OP_AND_IF (DBracket {B2 BINARY_STRING_NOT_EQUAL {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 5]}})]} {[LIT_CHARS noreply]}}) (Com {[LIT_CHARS echo]} {[LIT_CHARS -e]} {[DQ [LIT_CHARS STORED][\ LIT_ESCAPED_CHAR "\\r"]]} < (FilenameRedirectNode filename={[DQ [VarSub recv]]} "> 1), > ) ) ) (List (AndOr OP_OR_IF (Com {[LIT_CHARS read_data]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 4]}})]}) (Com {[LIT_CHARS return]} {[LIT_CHARS 1]}) ) (AndOr OP_AND_IF (Pipeline! (Com {[LIT_CHARS cache_has]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}) ) (AndOr OP_AND_IF (Com {[LIT_CHARS cache_set]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 2]}})]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 3]}})]} {[VarSub d]}) (AndOr OP_OR_IF (= scope= flags=0 words=[] bindings=[('result', {[LIT_CHARS STORED]})]) (= scope= flags=0 words=[] bindings=[('result', {[LIT_CHARS NOT_STORED]})]) ) ) ) (AndOr OP_AND_IF (DBracket {B2 BINARY_STRING_NOT_EQUAL {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 5]}})]} {[LIT_CHARS noreply]}}) (Com {[LIT_CHARS echo]} {[LIT_CHARS -e]} {[DQ [VarSub result][\ LIT_ESCAPED_CHAR "\\r"]]} < (FilenameRedirectNode filename={[DQ [VarSub recv]]} "> 1), > ) ) ) (List (AndOr OP_OR_IF (Com {[LIT_CHARS read_data]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 4]}})]}) (Com {[LIT_CHARS return]} {[LIT_CHARS 1]}) ) (AndOr OP_AND_IF (Com {[LIT_CHARS cache_has]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}) (AndOr OP_AND_IF (Com {[LIT_CHARS cache_set]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 2]}})]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 3]}})]} {[VarSub d]}) (AndOr OP_OR_IF (= scope= flags=0 words=[] bindings=[('result', {[LIT_CHARS STORED]})]) (= scope= flags=0 words=[] bindings=[('result', {[LIT_CHARS NOT_STORED]})]) ) ) ) (AndOr OP_AND_IF (DBracket {B2 BINARY_STRING_NOT_EQUAL {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 5]}})]} {[LIT_CHARS noreply]}}) (Com {[LIT_CHARS echo]} {[LIT_CHARS -e]} {[DQ [VarSub result][\ LIT_ESCAPED_CHAR "\\r"]]} < (FilenameRedirectNode filename={[DQ [VarSub recv]]} "> 1), > ) ) ) (List (AndOr OP_OR_IF (Com {[LIT_CHARS read_data]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 4]}})]}) (Com {[LIT_CHARS return]} {[LIT_CHARS 1]}) ) (AndOr OP_AND_IF (Com {[LIT_CHARS cache_has]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}) (AndOr OP_AND_IF (Com {[LIT_CHARS cache_set]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 2]}})]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 3]}})]} {[ComSub (Com {[LIT_CHARS base64_cat]} {[VarSub data bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}})]} {[VarSub d]})]}) (AndOr OP_OR_IF (= scope= flags=0 words=[] bindings=[('result', {[LIT_CHARS STORED]})]) (= scope= flags=0 words=[] bindings=[('result', {[LIT_CHARS NOT_STORED]})]) ) ) ) (AndOr OP_AND_IF (DBracket {B2 BINARY_STRING_NOT_EQUAL {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 5]}})]} {[LIT_CHARS noreply]}}) (Com {[LIT_CHARS echo]} {[LIT_CHARS -e]} {[DQ [VarSub result][\ LIT_ESCAPED_CHAR "\\r"]]} < (FilenameRedirectNode filename={[DQ [VarSub recv]]} "> 1), > ) ) ) (List (AndOr OP_OR_IF (Com {[LIT_CHARS read_data]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 4]}})]}) (Com {[LIT_CHARS return]} {[LIT_CHARS 1]}) ) (AndOr OP_AND_IF (Com {[LIT_CHARS cache_has]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}) (AndOr OP_AND_IF (Com {[LIT_CHARS cache_set]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 2]}})]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 3]}})]} {[ComSub (Com {[LIT_CHARS base64_cat]} {[VarSub d]} {[VarSub data bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}})]})]}) (AndOr OP_OR_IF (= scope= flags=0 words=[] bindings=[('result', {[LIT_CHARS STORED]})]) (= scope= flags=0 words=[] bindings=[('result', {[LIT_CHARS NOT_STORED]})]) ) ) ) (AndOr OP_AND_IF (DBracket {B2 BINARY_STRING_NOT_EQUAL {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 5]}})]} {[LIT_CHARS noreply]}}) (Com {[LIT_CHARS echo]} {[LIT_CHARS -e]} {[DQ [VarSub result][\ LIT_ESCAPED_CHAR "\\r"]]} < (FilenameRedirectNode filename={[DQ [VarSub recv]]} "> 1), > ) ) ) (List (AndOr OP_OR_IF (Com {[LIT_CHARS read_data]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 4]}})]}) (Com {[LIT_CHARS return]} {[LIT_CHARS 1]}) ) (If (Pipeline! (Com {[LIT_CHARS cache_has]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}) ) (= scope= flags=0 words=[] bindings=[('result', {[LIT_CHARS NOT_FOUND]})]) (ElseTrue) (AndOr OP_AND_IF (DBracket {B2 BINARY_INT_EQ {[VarSub casUnique bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}})]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 5]}})]}}) (AndOr OP_AND_IF (Com {[LIT_CHARS cache_set]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 2]}})]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 3]}})]} {[VarSub d]}) (AndOr OP_OR_IF (= scope= flags=0 words=[] bindings=[('result', {[LIT_CHARS STORED]})]) (= scope= flags=0 words=[] bindings=[('result', {[LIT_CHARS EXISTS]})]) ) ) ) ) (AndOr OP_AND_IF (DBracket {B2 BINARY_STRING_NOT_EQUAL {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 6]}})]} {[LIT_CHARS noreply]}}) (Com {[LIT_CHARS echo]} {[LIT_CHARS -e]} {[DQ [VarSub result][\ LIT_ESCAPED_CHAR "\\r"]]} < (FilenameRedirectNode filename={[DQ [VarSub recv]]} "> 1), > ) ) ) (Subshell (List (ForExpr {A2 AS_OP_EQUAL {A Atom NODE_ARITH_WORD {[VarSub i]}} {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}}} {A2 AS_OP_LESS {A Atom NODE_ARITH_WORD {[VarSub i]}} {A Atom NODE_ARITH_WORD {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}}) transform_ops=[(#len)]]}}} {A1 AS_OP_DPLUS {A Atom NODE_ARITH_WORD {[VarSub i]}} } (Com {[LIT_CHARS cache_get]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub i]}})]}) ) (Com {[LIT_CHARS echo]} {[LIT_CHARS -e]} {[SQ ]}) ) ) (Subshell (List (ForExpr {A2 AS_OP_EQUAL {A Atom NODE_ARITH_WORD {[VarSub i]}} {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}}} {A2 AS_OP_LESS {A Atom NODE_ARITH_WORD {[VarSub i]}} {A Atom NODE_ARITH_WORD {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}}) transform_ops=[(#len)]]}}} {A1 AS_OP_DPLUS {A Atom NODE_ARITH_WORD {[VarSub i]}} } (Com {[LIT_CHARS cache_get]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub i]}})]} {[LIT_CHARS 1]}) ) (Com {[LIT_CHARS echo]} {[LIT_CHARS -e]} {[SQ ]}) ) ) (List (AndOr OP_AND_IF (Com {[LIT_CHARS cache_has]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}) (AndOr OP_AND_IF (Com {[LIT_CHARS cache_delete]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}) (AndOr OP_OR_IF (= scope= flags=0 words=[] bindings=[('result', {[LIT_CHARS DELETED]})]) (= scope= flags=0 words=[] bindings=[('result', {[LIT_CHARS NOT_FOUND]})]) ) ) ) (AndOr OP_AND_IF (DBracket {B2 BINARY_STRING_NOT_EQUAL {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 2]}})]} {[LIT_CHARS noreply]}}) (Com {[LIT_CHARS echo]} {[LIT_CHARS -e]} {[DQ [VarSub result][\ LIT_ESCAPED_CHAR "\\r"]]} < (FilenameRedirectNode filename={[DQ [VarSub recv]]} "> 1), > ) ) ) (List (AndOr OP_AND_IF (Com {[LIT_CHARS cache_has]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}) (AndOr OP_AND_IF (= scope= flags=0 words=[] bindings=[('result', {[ArithSub {A2 AS_OP_PLUS {A Atom NODE_ARITH_WORD {[ComSub (Pipeline (Com {[LIT_CHARS echo]} {[LIT_CHARS -n]} {[VarSub data bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}})]}) (Com {[LIT_CHARS base64]}) )]}} {A Atom NODE_ARITH_WORD {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 2]}})]}}}]})]) (AndOr OP_OR_IF (Com {[LIT_CHARS cache_set]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]} {[VarSub flags bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}})]} {[VarSub exptime bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}})]} {[VarSub result]}) (= scope= flags=0 words=[] bindings=[('result', {[LIT_CHARS NOT_FOUND]})]) ) ) ) (AndOr OP_AND_IF (DBracket {B2 BINARY_STRING_NOT_EQUAL {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 3]}})]} {[LIT_CHARS noreply]}}) (Com {[LIT_CHARS echo]} {[LIT_CHARS -e]} {[DQ [VarSub result][\ LIT_ESCAPED_CHAR "\\r"]]} < (FilenameRedirectNode filename={[DQ [VarSub recv]]} "> 1), > ) ) ) (List (AndOr OP_AND_IF (Com {[LIT_CHARS cache_has]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}) (AndOr OP_AND_IF (= scope= flags=0 words=[] bindings=[('result', {[ArithSub {A2 AS_OP_MINUS {A Atom NODE_ARITH_WORD {[ComSub (Pipeline (Com {[LIT_CHARS echo]} {[LIT_CHARS -n]} {[VarSub data bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}})]}) (Com {[LIT_CHARS base64]}) )]}} {A Atom NODE_ARITH_WORD {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 2]}})]}}}]})]) (AndOr OP_OR_IF (Com {[LIT_CHARS cache_set]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]} {[VarSub flags bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}})]} {[VarSub exptime bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}})]} {[VarSub result]}) (= scope= flags=0 words=[] bindings=[('result', {[LIT_CHARS NOT_FOUND]})]) ) ) ) (AndOr OP_AND_IF (DBracket {B2 BINARY_STRING_NOT_EQUAL {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 3]}})]} {[LIT_CHARS noreply]}}) (Com {[LIT_CHARS echo]} {[LIT_CHARS -e]} {[DQ [VarSub result][\ LIT_ESCAPED_CHAR "\\r"]]} < (FilenameRedirectNode filename={[DQ [VarSub recv]]} "> 1), > ) ) ) (List (AndOr OP_AND_IF (Com {[LIT_CHARS cache_has]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}) (AndOr OP_AND_IF (Com {[LIT_CHARS cache_set]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]} {[VarSub flags bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}})]} {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 2]}})]} {[DQ [VarSub data bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}})]]} {[VarSub casUnique bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]}})]}) (AndOr OP_OR_IF (= scope= flags=0 words=[] bindings=[('result', {[LIT_CHARS TOUCHED]})]) (= scope= flags=0 words=[] bindings=[('result', {[LIT_CHARS NOT_FOUND]})]) ) ) ) (AndOr OP_AND_IF (DBracket {B2 BINARY_STRING_NOT_EQUAL {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 3]}})]} {[LIT_CHARS noreply]}}) (Com {[LIT_CHARS echo]} {[LIT_CHARS -e]} {[DQ [VarSub result][\ LIT_ESCAPED_CHAR "\\r"]]} < (FilenameRedirectNode filename={[DQ [VarSub recv]]} "> 1), > ) ) ) (List (For k [{[VarSub exptime bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}}) transform_ops=[(!ref)]]}]) (Com {[LIT_CHARS exptime] [LIT_OTHER "["] [VarSub k] [LIT_OTHER "]"] [LIT_OTHER "="] [ArithSub {A2 AS_OP_PLUS {A Atom NODE_ARITH_WORD {[VarSub time]}} {A Atom NODE_ARITH_WORD {[VarSub cmd bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}}) test_op=VS_TEST_HYPHEN {[LIT_CHARS 0]}]}}}]}) ) (AndOr OP_AND_IF (DBracket {B2 BINARY_STRING_NOT_EQUAL {[VarSub cmd bracket_op=(Index {A1 NODE_UNARY_MINUS {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}} })]} {[LIT_CHARS noreply]}}) (Com {[LIT_CHARS echo]} {[LIT_CHARS -e]} {[DQ [LIT_CHARS OK][\ LIT_ESCAPED_CHAR "\\r"]]} < (FilenameRedirectNode filename={[DQ [VarSub recv]]} "> 1), > ) ) ) (Fork (Com {[LIT_CHARS echo]} {[LIT_CHARS -e]} {[DQ [LIT_CHARS "VERSION "][VarSub VERSION][\ LIT_ESCAPED_CHAR "\\r"]]} < (FilenameRedirectNode filename={[DQ [VarSub recv]]} "> 1), > ) ) ) ) ) ) ) ) )