3v4l.org

run code in 300+ PHP versions simultaneously
<?php $input = "lf AND lq -> ls iu RSHIFT 1 -> jn bo OR bu -> bv gj RSHIFT 1 -> hc et RSHIFT 2 -> eu bv AND bx -> by is OR it -> iu b OR n -> o gf OR ge -> gg NOT kt -> ku ea AND eb -> ed kl OR kr -> ks hi AND hk -> hl au AND av -> ax lf RSHIFT 2 -> lg dd RSHIFT 3 -> df eu AND fa -> fc df AND dg -> di ip LSHIFT 15 -> it NOT el -> em et OR fe -> ff fj LSHIFT 15 -> fn t OR s -> u ly OR lz -> ma ko AND kq -> kr NOT fx -> fy et RSHIFT 1 -> fm eu OR fa -> fb dd RSHIFT 2 -> de NOT go -> gp kb AND kd -> ke hg OR hh -> hi jm LSHIFT 1 -> kg NOT cn -> co jp RSHIFT 2 -> jq jp RSHIFT 5 -> js 1 AND io -> ip eo LSHIFT 15 -> es 1 AND jj -> jk g AND i -> j ci RSHIFT 3 -> ck gn AND gp -> gq fs AND fu -> fv lj AND ll -> lm jk LSHIFT 15 -> jo iu RSHIFT 3 -> iw NOT ii -> ij 1 AND cc -> cd bn RSHIFT 3 -> bp NOT gw -> gx NOT ft -> fu jn OR jo -> jp iv OR jb -> jc hv OR hu -> hw 19138 -> b gj RSHIFT 5 -> gm hq AND hs -> ht dy RSHIFT 1 -> er ao OR an -> ap ld OR le -> lf bk LSHIFT 1 -> ce bz AND cb -> cc bi LSHIFT 15 -> bm il AND in -> io af AND ah -> ai as RSHIFT 1 -> bl lf RSHIFT 3 -> lh er OR es -> et NOT ax -> ay ci RSHIFT 1 -> db et AND fe -> fg lg OR lm -> ln k AND m -> n hz RSHIFT 2 -> ia kh LSHIFT 1 -> lb NOT ey -> ez NOT di -> dj dz OR ef -> eg lx -> a NOT iz -> ja gz LSHIFT 15 -> hd ce OR cd -> cf fq AND fr -> ft at AND az -> bb ha OR gz -> hb fp AND fv -> fx NOT gb -> gc ia AND ig -> ii gl OR gm -> gn 0 -> c NOT ca -> cb bn RSHIFT 1 -> cg c LSHIFT 1 -> t iw OR ix -> iy kg OR kf -> kh dy OR ej -> ek km AND kn -> kp NOT fc -> fd hz RSHIFT 3 -> ib NOT dq -> dr NOT fg -> fh dy RSHIFT 2 -> dz kk RSHIFT 2 -> kl 1 AND fi -> fj NOT hr -> hs jp RSHIFT 1 -> ki bl OR bm -> bn 1 AND gy -> gz gr AND gt -> gu db OR dc -> dd de OR dk -> dl as RSHIFT 5 -> av lf RSHIFT 5 -> li hm AND ho -> hp cg OR ch -> ci gj AND gu -> gw ge LSHIFT 15 -> gi e OR f -> g fp OR fv -> fw fb AND fd -> fe cd LSHIFT 15 -> ch b RSHIFT 1 -> v at OR az -> ba bn RSHIFT 2 -> bo lh AND li -> lk dl AND dn -> do eg AND ei -> ej ex AND ez -> fa NOT kp -> kq NOT lk -> ll x AND ai -> ak jp OR ka -> kb NOT jd -> je iy AND ja -> jb jp RSHIFT 3 -> jr fo OR fz -> ga df OR dg -> dh gj RSHIFT 2 -> gk gj OR gu -> gv NOT jh -> ji ap LSHIFT 1 -> bj NOT ls -> lt ir LSHIFT 1 -> jl bn AND by -> ca lv LSHIFT 15 -> lz ba AND bc -> bd cy LSHIFT 15 -> dc ln AND lp -> lq x RSHIFT 1 -> aq gk OR gq -> gr NOT kx -> ky jg AND ji -> jj bn OR by -> bz fl LSHIFT 1 -> gf bp OR bq -> br he OR hp -> hq et RSHIFT 5 -> ew iu RSHIFT 2 -> iv gl AND gm -> go x OR ai -> aj hc OR hd -> he lg AND lm -> lo lh OR li -> lj da LSHIFT 1 -> du fo RSHIFT 2 -> fp gk AND gq -> gs bj OR bi -> bk lf OR lq -> lr cj AND cp -> cr hu LSHIFT 15 -> hy 1 AND bh -> bi fo RSHIFT 3 -> fq NOT lo -> lp hw LSHIFT 1 -> iq dd RSHIFT 1 -> dw dt LSHIFT 15 -> dx dy AND ej -> el an LSHIFT 15 -> ar aq OR ar -> as 1 AND r -> s fw AND fy -> fz NOT im -> in et RSHIFT 3 -> ev 1 AND ds -> dt ec AND ee -> ef NOT ak -> al jl OR jk -> jm 1 AND en -> eo lb OR la -> lc iu AND jf -> jh iu RSHIFT 5 -> ix bo AND bu -> bw cz OR cy -> da iv AND jb -> jd iw AND ix -> iz lf RSHIFT 1 -> ly iu OR jf -> jg NOT dm -> dn lw OR lv -> lx gg LSHIFT 1 -> ha lr AND lt -> lu fm OR fn -> fo he RSHIFT 3 -> hg aj AND al -> am 1 AND kz -> la dy RSHIFT 5 -> eb jc AND je -> jf cm AND co -> cp gv AND gx -> gy ev OR ew -> ex jp AND ka -> kc fk OR fj -> fl dy RSHIFT 3 -> ea NOT bs -> bt NOT ag -> ah dz AND ef -> eh cf LSHIFT 1 -> cz NOT cv -> cw 1 AND cx -> cy de AND dk -> dm ck AND cl -> cn x RSHIFT 5 -> aa dv LSHIFT 1 -> ep he RSHIFT 2 -> hf NOT bw -> bx ck OR cl -> cm bp AND bq -> bs as OR bd -> be he AND hp -> hr ev AND ew -> ey 1 AND lu -> lv kk RSHIFT 3 -> km b AND n -> p NOT kc -> kd lc LSHIFT 1 -> lw km OR kn -> ko id AND if -> ig ih AND ij -> ik jr AND js -> ju ci RSHIFT 5 -> cl hz RSHIFT 1 -> is 1 AND ke -> kf NOT gs -> gt aw AND ay -> az x RSHIFT 2 -> y ab AND ad -> ae ff AND fh -> fi ci AND ct -> cv eq LSHIFT 1 -> fk gj RSHIFT 3 -> gl u LSHIFT 1 -> ao NOT bb -> bc NOT hj -> hk kw AND ky -> kz as AND bd -> bf dw OR dx -> dy br AND bt -> bu kk AND kv -> kx ep OR eo -> eq he RSHIFT 1 -> hx ki OR kj -> kk NOT ju -> jv ek AND em -> en kk RSHIFT 5 -> kn NOT eh -> ei hx OR hy -> hz ea OR eb -> ec s LSHIFT 15 -> w fo RSHIFT 1 -> gh kk OR kv -> kw bn RSHIFT 5 -> bq NOT ed -> ee 1 AND ht -> hu cu AND cw -> cx b RSHIFT 5 -> f kl AND kr -> kt iq OR ip -> ir ci RSHIFT 2 -> cj cj OR cp -> cq o AND q -> r dd RSHIFT 5 -> dg b RSHIFT 2 -> d ks AND ku -> kv b RSHIFT 3 -> e d OR j -> k NOT p -> q NOT cr -> cs du OR dt -> dv kf LSHIFT 15 -> kj NOT ac -> ad fo RSHIFT 5 -> fr hz OR ik -> il jx AND jz -> ka gh OR gi -> gj kk RSHIFT 1 -> ld hz RSHIFT 5 -> ic as RSHIFT 2 -> at NOT jy -> jz 1 AND am -> an ci OR ct -> cu hg AND hh -> hj jq OR jw -> jx v OR w -> x la LSHIFT 15 -> le dh AND dj -> dk dp AND dr -> ds jq AND jw -> jy au OR av -> aw NOT bf -> bg z OR aa -> ab ga AND gc -> gd hz AND ik -> im jt AND jv -> jw z AND aa -> ac jr OR js -> jt hb LSHIFT 1 -> hv hf OR hl -> hm ib OR ic -> id fq OR fr -> fs cq AND cs -> ct ia OR ig -> ih dd OR do -> dp d AND j -> l ib AND ic -> ie as RSHIFT 3 -> au be AND bg -> bh dd AND do -> dq NOT l -> m 1 AND gd -> ge y AND ae -> ag fo AND fz -> gb NOT ie -> if e AND f -> h x RSHIFT 3 -> z y OR ae -> af hf AND hl -> hn NOT h -> i NOT hn -> ho he RSHIFT 5 -> hh"; $inputs = explode("\n", $input); function operation($s){ $matchesand = null; $and = preg_match("/(.{1,2})\sAND\s(.{1,2})\s->\s(.{1,2})/",$s,$matchesand); if(count($matchesand)>0){ return array(1,$matchesand[1] , $matchesand[2], $matchesand[3]); } $matchesor= null; $or = preg_match("/(.{1,2})\sOR\s(.{1,2})\s->\s(.{1,2})/",$s,$matchesor); if(count($matchesor)>0){ return array(2,$matchesor[1] , $matchesor[2], $matchesor[3]); } $matchesnot = null; $not = preg_match("/NOT\s(.{1,2})\s->\s(.{1,2})/",$s,$matchesnot); if(count($matchesnot)>0){ return array(3,$matchesnot[1], $matchesnot[2]); } $matchesleft = null; $left = preg_match("/(.{1,2})\sLSHIFT\s(.{1,2})\s->\s(.{1,2})/",$s,$matchesleft); if(count($matchesleft)>0){ return array(4,$matchesleft[1] , $matchesleft[2], $matchesleft[3]); } $matchesright = null; $right = preg_match("/(.{1,2})\sRSHIFT\s(.{1,2})\s->\s(.{1,2})/",$s,$matchesright); if(count($matchesright)>0){ return array(5,$matchesright[1] , $matchesright[2], $matchesright[3]); } $matches = null; $simple = preg_match("/(.{1,5})\s->\s(.{1,2})/",$s,$matches); if(count($matches)>0){ return array(6,$matches[1], $matches[2]); } } $array=array(); for($i = 'a'; $i<='z'; $i++){ $array[$i]=0; } for($i = 'a'; $i<='z'; $i++){ for($j = 'a'; $j<='z'; $j++){ $array[$i.$j]=0; } } for($i = 0; $i<count($inputs); $i++){ $values = operation($inputs[$i]); //var_dump($values); if($values[0] === 1){ if(intval($values[1])>0) $array[$values[3]] = (int)$values[1] & $array[$values[2]]; else $array[$values[3]] = $array[$values[1]] & $array[$values[2]]; } if($values[0] === 2){ $array[$values[3]] = $array[$values[1]] | $array[$values[2]]; } if($values[0] === 3){ $array[$values[2]] = ~$array[$values[1]]; } if($values[0] === 4){ $array[$values[3]] = $array[$values[1]]<<intval($values[2]); } if($values[0] === 5){ $array[$values[3]] = $array[$values[1]]>>intval($values[2]); } if($values[0] === 6){ $array[$values[2]] = intval($values[1]); } //$array[$var] = $val; } var_dump($array); ?>
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 12
Branch analysis from position: 12
2 jumps found. (Code = 44) Position 1 = 14, Position 2 = 9
Branch analysis from position: 14
1 jumps found. (Code = 42) Position 1 = 25
Branch analysis from position: 25
2 jumps found. (Code = 44) Position 1 = 27, Position 2 = 16
Branch analysis from position: 27
1 jumps found. (Code = 42) Position 1 = 109
Branch analysis from position: 109
2 jumps found. (Code = 44) Position 1 = 112, Position 2 = 29
Branch analysis from position: 112
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 29
2 jumps found. (Code = 43) Position 1 = 37, Position 2 = 58
Branch analysis from position: 37
2 jumps found. (Code = 43) Position 1 = 41, Position 2 = 50
Branch analysis from position: 41
1 jumps found. (Code = 42) Position 1 = 58
Branch analysis from position: 58
2 jumps found. (Code = 43) Position 1 = 61, Position 2 = 69
Branch analysis from position: 61
2 jumps found. (Code = 43) Position 1 = 72, Position 2 = 78
Branch analysis from position: 72
2 jumps found. (Code = 43) Position 1 = 81, Position 2 = 89
Branch analysis from position: 81
2 jumps found. (Code = 43) Position 1 = 92, Position 2 = 100
Branch analysis from position: 92
2 jumps found. (Code = 43) Position 1 = 103, Position 2 = 108
Branch analysis from position: 103
2 jumps found. (Code = 44) Position 1 = 112, Position 2 = 29
Branch analysis from position: 112
Branch analysis from position: 29
Branch analysis from position: 108
Branch analysis from position: 100
Branch analysis from position: 89
Branch analysis from position: 78
Branch analysis from position: 69
Branch analysis from position: 50
2 jumps found. (Code = 43) Position 1 = 61, Position 2 = 69
Branch analysis from position: 61
Branch analysis from position: 69
Branch analysis from position: 58
Branch analysis from position: 16
1 jumps found. (Code = 42) Position 1 = 22
Branch analysis from position: 22
2 jumps found. (Code = 44) Position 1 = 24, Position 2 = 18
Branch analysis from position: 24
2 jumps found. (Code = 44) Position 1 = 27, Position 2 = 16
Branch analysis from position: 27
Branch analysis from position: 16
Branch analysis from position: 18
2 jumps found. (Code = 44) Position 1 = 24, Position 2 = 18
Branch analysis from position: 24
Branch analysis from position: 18
Branch analysis from position: 9
2 jumps found. (Code = 44) Position 1 = 14, Position 2 = 9
Branch analysis from position: 14
Branch analysis from position: 9
filename:       /in/3k68e
function name:  (null)
number of ops:  116
compiled vars:  !0 = $input, !1 = $inputs, !2 = $array, !3 = $i, !4 = $j, !5 = $values
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, 'lf+AND+lq+-%3E+ls%0Aiu+RSHIFT+1+-%3E+jn%0Abo+OR+bu+-%3E+bv%0Agj+RSHIFT+1+-%3E+hc%0Aet+RSHIFT+2+-%3E+eu%0Abv+AND+bx+-%3E+by%0Ais+OR+it+-%3E+iu%0Ab+OR+n+-%3E+o%0Agf+OR+ge+-%3E+gg%0ANOT+kt+-%3E+ku%0Aea+AND+eb+-%3E+ed%0Akl+OR+kr+-%3E+ks%0Ahi+AND+hk+-%3E+hl%0Aau+AND+av+-%3E+ax%0Alf+RSHIFT+2+-%3E+lg%0Add+RSHIFT+3+-%3E+df%0Aeu+AND+fa+-%3E+fc%0Adf+AND+dg+-%3E+di%0Aip+LSHIFT+15+-%3E+it%0ANOT+el+-%3E+em%0Aet+OR+fe+-%3E+ff%0Afj+LSHIFT+15+-%3E+fn%0At+OR+s+-%3E+u%0Aly+OR+lz+-%3E+ma%0Ako+AND+kq+-%3E+kr%0ANOT+fx+-%3E+fy%0Aet+RSHIFT+1+-%3E+fm%0Aeu+OR+fa+-%3E+fb%0Add+RSHIFT+2+-%3E+de%0ANOT+go+-%3E+gp%0Akb+AND+kd+-%3E+ke%0Ahg+OR+hh+-%3E+hi%0Ajm+LSHIFT+1+-%3E+kg%0ANOT+cn+-%3E+co%0Ajp+RSHIFT+2+-%3E+jq%0Ajp+RSHIFT+5+-%3E+js%0A1+AND+io+-%3E+ip%0Aeo+LSHIFT+15+-%3E+es%0A1+AND+jj+-%3E+jk%0Ag+AND+i+-%3E+j%0Aci+RSHIFT+3+-%3E+ck%0Agn+AND+gp+-%3E+gq%0Afs+AND+fu+-%3E+fv%0Alj+AND+ll+-%3E+lm%0Ajk+LSHIFT+15+-%3E+jo%0Aiu+RSHIFT+3+-%3E+iw%0ANOT+ii+-%3E+ij%0A1+AND+cc+-%3E+cd%0Abn+RSHIFT+3+-%3E+bp%0ANOT+gw+-%3E+gx%0ANOT+ft+-%3E+fu%0Ajn+OR+jo+-%3E+jp%0Aiv+OR+jb+-%3E+jc%0Ahv+OR+hu+-%3E+hw%0A19138+-%3E+b%0Agj+RSHIFT+5+-%3E+gm%0Ahq+AND+hs+-%3E+ht%0Ady+RSHIFT+1+-%3E+er%0Aao+OR+an+-%3E+ap%0Ald+OR+le+-%3E+lf%0Abk+LSHIFT+1+-%3E+ce%0Abz+AND+cb+-%3E+cc%0Abi+LSHIFT+15+-%3E+bm%0Ail+AND+in+-%3E+io%0Aaf+AND+ah+-%3E+ai%0Aas+RSHIFT+1+-%3E+bl%0Alf+RSHIFT+3+-%3E+lh%0Aer+OR+es+-%3E+et%0ANOT+ax+-%3E+ay%0Aci+RSHIFT+1+-%3E+db%0Aet+AND+fe+-%3E+fg%0Alg+OR+lm+-%3E+ln%0Ak+AND+m+-%3E+n%0Ahz+RSHIFT+2+-%3E+ia%0Akh+LSHIFT+1+-%3E+lb%0ANOT+ey+-%3E+ez%0ANOT+di+-%3E+dj%0Adz+OR+ef+-%3E+eg%0Alx+-%3E+a%0ANOT+iz+-%3E+ja%0Agz+LSHIFT+15+-%3E+hd%0Ace+OR+cd+-%3E+cf%0Afq+AND+fr+-%3E+ft%0Aat+AND+az+-%3E+bb%0Aha+OR+gz+-%3E+hb%0Afp+AND+fv+-%3E+fx%0ANOT+gb+-%3E+gc%0Aia+AND+ig+-%3E+ii%0Agl+OR+gm+-%3E+gn%0A0+-%3E+c%0ANOT+ca+-%3E+cb%0Abn+RSHIFT+1+-%3E+cg%0Ac+LSHIFT+1+-%3E+t%0Aiw+OR+ix+-%3E+iy%0Akg+OR+kf+-%3E+kh%0Ady+OR+ej+-%3E+ek%0Akm+AND+kn+-%3E+kp%0ANOT+fc+-%3E+fd%0Ahz+RSHIFT+3+-%3E+ib%0ANOT+dq+-%3E+dr%0ANOT+fg+-%3E+fh%0Ady+RSHIFT+2+-%3E+dz%0Akk+RSHIFT+2+-%3E+kl%0A1+AND+fi+-%3E+fj%0ANOT+hr+-%3E+hs%0Ajp+RSHIFT+1+-%3E+ki%0Abl+OR+bm+-%3E+bn%0A1+AND+gy+-%3E+gz%0Agr+AND+gt+-%3E+gu%0Adb+OR+dc+-%3E+dd%0Ade+OR+dk+-%3E+dl%0Aas+RSHIFT+5+-%3E+av%0Alf+RSHIFT+5+-%3E+li%0Ahm+AND+ho+-%3E+hp%0Acg+OR+ch+-%3E+ci%0Agj+AND+gu+-%3E+gw%0Age+LSHIFT+15+-%3E+gi%0Ae+OR+f+-%3E+g%0Afp+OR+fv+-%3E+fw%0Afb+AND+fd+-%3E+fe%0Acd+LSHIFT+15+-%3E+ch%0Ab+RSHIFT+1+-%3E+v%0Aat+OR+az+-%3E+ba%0Abn+RSHIFT+2+-%3E+bo%0Alh+AND+li+-%3E+lk%0Adl+AND+dn+-%3E+do%0Aeg+AND+ei+-%3E+ej%0Aex+AND+ez+-%3E+fa%0ANOT+kp+-%3E+kq%0ANOT+lk+-%3E+ll%0Ax+AND+ai+-%3E+ak%0Ajp+OR+ka+-%3E+kb%0ANOT+jd+-%3E+je%0Aiy+AND+ja+-%3E+jb%0Ajp+RSHIFT+3+-%3E+jr%0Afo+OR+fz+-%3E+ga%0Adf+OR+dg+-%3E+dh%0Agj+RSHIFT+2+-%3E+gk%0Agj+OR+gu+-%3E+gv%0ANOT+jh+-%3E+ji%0Aap+LSHIFT+1+-%3E+bj%0ANOT+ls+-%3E+lt%0Air+LSHIFT+1+-%3E+jl%0Abn+AND+by+-%3E+ca%0Alv+LSHIFT+15+-%3E+lz%0Aba+AND+bc+-%3E+bd%0Acy+LSHIFT+15+-%3E+dc%0Aln+AND+lp+-%3E+lq%0Ax+RSHIFT+1+-%3E+aq%0Agk+OR+gq+-%3E+gr%0ANOT+kx+-%3E+ky%0Ajg+AND+ji+-%3E+jj%0Abn+OR+by+-%3E+bz%0Afl+LSHIFT+1+-%3E+gf%0Abp+OR+bq+-%3E+br%0Ahe+OR+hp+-%3E+hq%0Aet+RSHIFT+5+-%3E+ew%0Aiu+RSHIFT+2+-%3E+iv%0Agl+AND+gm+-%3E+go%0Ax+OR+ai+-%3E+aj%0Ahc+OR+hd+-%3E+he%0Alg+AND+lm+-%3E+lo%0Alh+OR+li+-%3E+lj%0Ada+LSHIFT+1+-%3E+du%0Afo+RSHIFT+2+-%3E+fp%0Agk+AND+gq+-%3E+gs%0Abj+OR+bi+-%3E+bk%0Alf+OR+lq+-%3E+lr%0Acj+AND+cp+-%3E+cr%0Ahu+LSHIFT+15+-%3E+hy%0A1+AND+bh+-%3E+bi%0Afo+RSHIFT+3+-%3E+fq%0ANOT+lo+-%3E+lp%0Ahw+LSHIFT+1+-%3E+iq%0Add+RSHIFT+1+-%3E+dw%0Adt+LSHIFT+15+-%3E+dx%0Ady+AND+ej+-%3E+el%0Aan+LSHIFT+15+-%3E+ar%0Aaq+OR+ar+-%3E+as%0A1+AND+r+-%3E+s%0Afw+AND+fy+-%3E+fz%0ANOT+im+-%3E+in%0Aet+RSHIFT+3+-%3E+ev%0A1+AND+ds+-%3E+dt%0Aec+AND+ee+-%3E+ef%0ANOT+ak+-%3E+al%0Ajl+OR+jk+-%3E+jm%0A1+AND+en+-%3E+eo%0Alb+OR+la+-%3E+lc%0Aiu+AND+jf+-%3E+jh%0Aiu+RSHIFT+5+-%3E+ix%0Abo+AND+bu+-%3E+bw%0Acz+OR+cy+-%3E+da%0Aiv+AND+jb+-%3E+jd%0Aiw+AND+ix+-%3E+iz%0Alf+RSHIFT+1+-%3E+ly%0Aiu+OR+jf+-%3E+jg%0ANOT+dm+-%3E+dn%0Alw+OR+lv+-%3E+lx%0Agg+LSHIFT+1+-%3E+ha%0Alr+AND+lt+-%3E+lu%0Afm+OR+fn+-%3E+fo%0Ahe+RSHIFT+3+-%3E+hg%0Aaj+AND+al+-%3E+am%0A1+AND+kz+-%3E+la%0Ady+RSHIFT+5+-%3E+eb%0Ajc+AND+je+-%3E+jf%0Acm+AND+co+-%3E+cp%0Agv+AND+gx+-%3E+gy%0Aev+OR+ew+-%3E+ex%0Ajp+AND+ka+-%3E+kc%0Afk+OR+fj+-%3E+fl%0Ady+RSHIFT+3+-%3E+ea%0ANOT+bs+-%3E+bt%0ANOT+ag+-%3E+ah%0Adz+AND+ef+-%3E+eh%0Acf+LSHIFT+1+-%3E+cz%0ANOT+cv+-%3E+cw%0A1+AND+cx+-%3E+cy%0Ade+AND+dk+-%3E+dm%0Ack+AND+cl+-%3E+cn%0Ax+RSHIFT+5+-%3E+aa%0Adv+LSHIFT+1+-%3E+ep%0Ahe+RSHIFT+2+-%3E+hf%0ANOT+bw+-%3E+bx%0Ack+OR+cl+-%3E+cm%0Abp+AND+bq+-%3E+bs%0Aas+OR+bd+-%3E+be%0Ahe+AND+hp+-%3E+hr%0Aev+AND+ew+-%3E+ey%0A1+AND+lu+-%3E+lv%0Akk+RSHIFT+3+-%3E+km%0Ab+AND+n+-%3E+p%0ANOT+kc+-%3E+kd%0Alc+LSHIFT+1+-%3E+lw%0Akm+OR+kn+-%3E+ko%0Aid+AND+if+-%3E+ig%0Aih+AND+ij+-%3E+ik%0Ajr+AND+js+-%3E+ju%0Aci+RSHIFT+5+-%3E+cl%0Ahz+RSHIFT+1+-%3E+is%0A1+AND+ke+-%3E+kf%0ANOT+gs+-%3E+gt%0Aaw+AND+ay+-%3E+az%0Ax+RSHIFT+2+-%3E+y%0Aab+AND+ad+-%3E+ae%0Aff+AND+fh+-%3E+fi%0Aci+AND+ct+-%3E+cv%0Aeq+LSHIFT+1+-%3E+fk%0Agj+RSHIFT+3+-%3E+gl%0Au+LSHIFT+1+-%3E+ao%0ANOT+bb+-%3E+bc%0ANOT+hj+-%3E+hk%0Akw+AND+ky+-%3E+kz%0Aas+AND+bd+-%3E+bf%0Adw+OR+dx+-%3E+dy%0Abr+AND+bt+-%3E+bu%0Akk+AND+kv+-%3E+kx%0Aep+OR+eo+-%3E+eq%0Ahe+RSHIFT+1+-%3E+hx%0Aki+OR+kj+-%3E+kk%0ANOT+ju+-%3E+jv%0Aek+AND+em+-%3E+en%0Akk+RSHIFT+5+-%3E+kn%0ANOT+eh+-%3E+ei%0Ahx+OR+hy+-%3E+hz%0Aea+OR+eb+-%3E+ec%0As+LSHIFT+15+-%3E+w%0Afo+RSHIFT+1+-%3E+gh%0Akk+OR+kv+-%3E+kw%0Abn+RSHIFT+5+-%3E+bq%0ANOT+ed+-%3E+ee%0A1+AND+ht+-%3E+hu%0Acu+AND+cw+-%3E+cx%0Ab+RSHIFT+5+-%3E+f%0Akl+AND+kr+-%3E+kt%0Aiq+OR+ip+-%3E+ir%0Aci+RSHIFT+2+-%3E+cj%0Acj+OR+cp+-%3E+cq%0Ao+AND+q+-%3E+r%0Add+RSHIFT+5+-%3E+dg%0Ab+RSHIFT+2+-%3E+d%0Aks+AND+ku+-%3E+kv%0Ab+RSHIFT+3+-%3E+e%0Ad+OR+j+-%3E+k%0ANOT+p+-%3E+q%0ANOT+cr+-%3E+cs%0Adu+OR+dt+-%3E+dv%0Akf+LSHIFT+15+-%3E+kj%0ANOT+ac+-%3E+ad%0Afo+RSHIFT+5+-%3E+fr%0Ahz+OR+ik+-%3E+il%0Ajx+AND+jz+-%3E+ka%0Agh+OR+gi+-%3E+gj%0Akk+RSHIFT+1+-%3E+ld%0Ahz+RSHIFT+5+-%3E+ic%0Aas+RSHIFT+2+-%3E+at%0ANOT+jy+-%3E+jz%0A1+AND+am+-%3E+an%0Aci+OR+ct+-%3E+cu%0Ahg+AND+hh+-%3E+hj%0Ajq+OR+jw+-%3E+jx%0Av+OR+w+-%3E+x%0Ala+LSHIFT+15+-%3E+le%0Adh+AND+dj+-%3E+dk%0Adp+AND+dr+-%3E+ds%0Ajq+AND+jw+-%3E+jy%0Aau+OR+av+-%3E+aw%0ANOT+bf+-%3E+bg%0Az+OR+aa+-%3E+ab%0Aga+AND+gc+-%3E+gd%0Ahz+AND+ik+-%3E+im%0Ajt+AND+jv+-%3E+jw%0Az+AND+aa+-%3E+ac%0Ajr+OR+js+-%3E+jt%0Ahb+LSHIFT+1+-%3E+hv%0Ahf+OR+hl+-%3E+hm%0Aib+OR+ic+-%3E+id%0Afq+OR+fr+-%3E+fs%0Acq+AND+cs+-%3E+ct%0Aia+OR+ig+-%3E+ih%0Add+OR+do+-%3E+dp%0Ad+AND+j+-%3E+l%0Aib+AND+ic+-%3E+ie%0Aas+RSHIFT+3+-%3E+au%0Abe+AND+bg+-%3E+bh%0Add+AND+do+-%3E+dq%0ANOT+l+-%3E+m%0A1+AND+gd+-%3E+ge%0Ay+AND+ae+-%3E+ag%0Afo+AND+fz+-%3E+gb%0ANOT+ie+-%3E+if%0Ae+AND+f+-%3E+h%0Ax+RSHIFT+3+-%3E+z%0Ay+OR+ae+-%3E+af%0Ahf+AND+hl+-%3E+hn%0ANOT+h+-%3E+i%0ANOT+hn+-%3E+ho%0Ahe+RSHIFT+5+-%3E+hh'
  341     1        INIT_FCALL                                               'explode'
          2        SEND_VAL                                                 '%0A'
          3        SEND_VAR                                                 !0
          4        DO_ICALL                                         $7      
          5        ASSIGN                                                   !1, $7
  379     6        ASSIGN                                                   !2, <array>
  380     7        ASSIGN                                                   !3, 'a'
          8      > JMP                                                      ->12
  381     9    >   ASSIGN_DIM                                               !2, !3
         10        OP_DATA                                                  0
  380    11        PRE_INC                                                  !3
         12    >   IS_SMALLER_OR_EQUAL                                      !3, 'z'
         13      > JMPNZ                                                    ~13, ->9
  383    14    >   ASSIGN                                                   !3, 'a'
         15      > JMP                                                      ->25
  384    16    >   ASSIGN                                                   !4, 'a'
         17      > JMP                                                      ->22
  385    18    >   CONCAT                                           ~16     !3, !4
         19        ASSIGN_DIM                                               !2, ~16
         20        OP_DATA                                                  0
  384    21        PRE_INC                                                  !4
         22    >   IS_SMALLER_OR_EQUAL                                      !4, 'z'
         23      > JMPNZ                                                    ~19, ->18
  383    24    >   PRE_INC                                                  !3
         25    >   IS_SMALLER_OR_EQUAL                                      !3, 'z'
         26      > JMPNZ                                                    ~21, ->16
  388    27    >   ASSIGN                                                   !3, 0
         28      > JMP                                                      ->109
  389    29    >   INIT_FCALL                                               'operation'
         30        FETCH_DIM_R                                      ~23     !1, !3
         31        SEND_VAL                                                 ~23
         32        DO_FCALL                                      0  $24     
         33        ASSIGN                                                   !5, $24
  391    34        FETCH_DIM_R                                      ~26     !5, 0
         35        IS_IDENTICAL                                             ~26, 1
         36      > JMPZ                                                     ~27, ->58
  392    37    >   FETCH_DIM_R                                      ~28     !5, 1
         38        CAST                                          4  ~29     ~28
         39        IS_SMALLER                                               0, ~29
         40      > JMPZ                                                     ~30, ->50
  393    41    >   FETCH_DIM_R                                      ~31     !5, 3
         42        FETCH_DIM_R                                      ~33     !5, 1
         43        CAST                                          4  ~34     ~33
         44        FETCH_DIM_R                                      ~35     !5, 2
         45        FETCH_DIM_R                                      ~36     !2, ~35
         46        BW_AND                                           ~37     ~34, ~36
         47        ASSIGN_DIM                                               !2, ~31
         48        OP_DATA                                                  ~37
         49      > JMP                                                      ->58
  395    50    >   FETCH_DIM_R                                      ~38     !5, 3
         51        FETCH_DIM_R                                      ~40     !5, 1
         52        FETCH_DIM_R                                      ~41     !2, ~40
         53        FETCH_DIM_R                                      ~42     !5, 2
         54        FETCH_DIM_R                                      ~43     !2, ~42
         55        BW_AND                                           ~44     ~41, ~43
         56        ASSIGN_DIM                                               !2, ~38
         57        OP_DATA                                                  ~44
  398    58    >   FETCH_DIM_R                                      ~45     !5, 0
         59        IS_IDENTICAL                                             ~45, 2
         60      > JMPZ                                                     ~46, ->69
  399    61    >   FETCH_DIM_R                                      ~47     !5, 3
         62        FETCH_DIM_R                                      ~49     !5, 1
         63        FETCH_DIM_R                                      ~50     !2, ~49
         64        FETCH_DIM_R                                      ~51     !5, 2
         65        FETCH_DIM_R                                      ~52     !2, ~51
         66        BW_OR                                            ~53     ~50, ~52
         67        ASSIGN_DIM                                               !2, ~47
         68        OP_DATA                                                  ~53
  401    69    >   FETCH_DIM_R                                      ~54     !5, 0
         70        IS_IDENTICAL                                             ~54, 3
         71      > JMPZ                                                     ~55, ->78
  402    72    >   FETCH_DIM_R                                      ~56     !5, 2
         73        FETCH_DIM_R                                      ~58     !5, 1
         74        FETCH_DIM_R                                      ~59     !2, ~58
         75        BW_NOT                                           ~60     ~59
         76        ASSIGN_DIM                                               !2, ~56
         77        OP_DATA                                                  ~60
  404    78    >   FETCH_DIM_R                                      ~61     !5, 0
         79        IS_IDENTICAL                                             ~61, 4
         80      > JMPZ                                                     ~62, ->89
  405    81    >   FETCH_DIM_R                                      ~63     !5, 3
         82        FETCH_DIM_R                                      ~65     !5, 1
         83        FETCH_DIM_R                                      ~66     !2, ~65
         84        FETCH_DIM_R                                      ~67     !5, 2
         85        CAST                                          4  ~68     ~67
         86        SL                                               ~69     ~66, ~68
         87        ASSIGN_DIM                                               !2, ~63
         88        OP_DATA                                                  ~69
  407    89    >   FETCH_DIM_R                                      ~70     !5, 0
         90        IS_IDENTICAL                                             ~70, 5
         91      > JMPZ                                                     ~71, ->100
  408    92    >   FETCH_DIM_R                                      ~72     !5, 3
         93        FETCH_DIM_R                                      ~74     !5, 1
         94        FETCH_DIM_R                                      ~75     !2, ~74
         95        FETCH_DIM_R                                      ~76     !5, 2
         96        CAST                                          4  ~77     ~76
         97        SR                                               ~78     ~75, ~77
         98        ASSIGN_DIM                                               !2, ~72
         99        OP_DATA                                                  ~78
  410   100    >   FETCH_DIM_R                                      ~79     !5, 0
        101        IS_IDENTICAL                                             ~79, 6
        102      > JMPZ                                                     ~80, ->108
  411   103    >   FETCH_DIM_R                                      ~81     !5, 2
        104        FETCH_DIM_R                                      ~83     !5, 1
        105        CAST                                          4  ~84     ~83
        106        ASSIGN_DIM                                               !2, ~81
        107        OP_DATA                                                  ~84
  388   108    >   PRE_INC                                                  !3
        109    >   COUNT                                            ~86     !1
        110        IS_SMALLER                                               !3, ~86
        111      > JMPNZ                                                    ~87, ->29
  416   112    >   INIT_FCALL                                               'var_dump'
        113        SEND_VAR                                                 !2
        114        DO_ICALL                                                 
  417   115      > RETURN                                                   1

Function operation:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 11, Position 2 = 19
Branch analysis from position: 11
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 19
2 jumps found. (Code = 43) Position 1 = 29, Position 2 = 37
Branch analysis from position: 29
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 37
2 jumps found. (Code = 43) Position 1 = 47, Position 2 = 53
Branch analysis from position: 47
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 53
2 jumps found. (Code = 43) Position 1 = 63, Position 2 = 71
Branch analysis from position: 63
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 71
2 jumps found. (Code = 43) Position 1 = 81, Position 2 = 89
Branch analysis from position: 81
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 89
2 jumps found. (Code = 43) Position 1 = 99, Position 2 = 105
Branch analysis from position: 99
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 105
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/3k68e
function name:  operation
number of ops:  106
compiled vars:  !0 = $s, !1 = $matchesand, !2 = $and, !3 = $matchesor, !4 = $or, !5 = $matchesnot, !6 = $not, !7 = $matchesleft, !8 = $left, !9 = $matchesright, !10 = $right, !11 = $matches, !12 = $simple
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
  343     0  E >   RECV                                             !0      
  344     1        ASSIGN                                                   !1, null
  345     2        INIT_FCALL                                               'preg_match'
          3        SEND_VAL                                                 '%2F%28.%7B1%2C2%7D%29%5CsAND%5Cs%28.%7B1%2C2%7D%29%5Cs-%3E%5Cs%28.%7B1%2C2%7D%29%2F'
          4        SEND_VAR                                                 !0
          5        SEND_REF                                                 !1
          6        DO_ICALL                                         $14     
          7        ASSIGN                                                   !2, $14
  346     8        COUNT                                            ~16     !1
          9        IS_SMALLER                                               0, ~16
         10      > JMPZ                                                     ~17, ->19
  347    11    >   INIT_ARRAY                                       ~18     1
         12        FETCH_DIM_R                                      ~19     !1, 1
         13        ADD_ARRAY_ELEMENT                                ~18     ~19
         14        FETCH_DIM_R                                      ~20     !1, 2
         15        ADD_ARRAY_ELEMENT                                ~18     ~20
         16        FETCH_DIM_R                                      ~21     !1, 3
         17        ADD_ARRAY_ELEMENT                                ~18     ~21
         18      > RETURN                                                   ~18
  350    19    >   ASSIGN                                                   !3, null
  351    20        INIT_FCALL                                               'preg_match'
         21        SEND_VAL                                                 '%2F%28.%7B1%2C2%7D%29%5CsOR%5Cs%28.%7B1%2C2%7D%29%5Cs-%3E%5Cs%28.%7B1%2C2%7D%29%2F'
         22        SEND_VAR                                                 !0
         23        SEND_REF                                                 !3
         24        DO_ICALL                                         $23     
         25        ASSIGN                                                   !4, $23
  352    26        COUNT                                            ~25     !3
         27        IS_SMALLER                                               0, ~25
         28      > JMPZ                                                     ~26, ->37
  353    29    >   INIT_ARRAY                                       ~27     2
         30        FETCH_DIM_R                                      ~28     !3, 1
         31        ADD_ARRAY_ELEMENT                                ~27     ~28
         32        FETCH_DIM_R                                      ~29     !3, 2
         33        ADD_ARRAY_ELEMENT                                ~27     ~29
         34        FETCH_DIM_R                                      ~30     !3, 3
         35        ADD_ARRAY_ELEMENT                                ~27     ~30
         36      > RETURN                                                   ~27
  356    37    >   ASSIGN                                                   !5, null
  357    38        INIT_FCALL                                               'preg_match'
         39        SEND_VAL                                                 '%2FNOT%5Cs%28.%7B1%2C2%7D%29%5Cs-%3E%5Cs%28.%7B1%2C2%7D%29%2F'
         40        SEND_VAR                                                 !0
         41        SEND_REF                                                 !5
         42        DO_ICALL                                         $32     
         43        ASSIGN                                                   !6, $32
  358    44        COUNT                                            ~34     !5
         45        IS_SMALLER                                               0, ~34
         46      > JMPZ                                                     ~35, ->53
  359    47    >   INIT_ARRAY                                       ~36     3
         48        FETCH_DIM_R                                      ~37     !5, 1
         49        ADD_ARRAY_ELEMENT                                ~36     ~37
         50        FETCH_DIM_R                                      ~38     !5, 2
         51        ADD_ARRAY_ELEMENT                                ~36     ~38
         52      > RETURN                                                   ~36
  362    53    >   ASSIGN                                                   !7, null
  363    54        INIT_FCALL                                               'preg_match'
         55        SEND_VAL                                                 '%2F%28.%7B1%2C2%7D%29%5CsLSHIFT%5Cs%28.%7B1%2C2%7D%29%5Cs-%3E%5Cs%28.%7B1%2C2%7D%29%2F'
         56        SEND_VAR                                                 !0
         57        SEND_REF                                                 !7
         58        DO_ICALL                                         $40     
         59        ASSIGN                                                   !8, $40
  364    60        COUNT                                            ~42     !7
         61        IS_SMALLER                                               0, ~42
         62      > JMPZ                                                     ~43, ->71
  365    63    >   INIT_ARRAY                                       ~44     4
         64        FETCH_DIM_R                                      ~45     !7, 1
         65        ADD_ARRAY_ELEMENT                                ~44     ~45
         66        FETCH_DIM_R                                      ~46     !7, 2
         67        ADD_ARRAY_ELEMENT                                ~44     ~46
         68        FETCH_DIM_R                                      ~47     !7, 3
         69        ADD_ARRAY_ELEMENT                                ~44     ~47
         70      > RETURN                                                   ~44
  367    71    >   ASSIGN                                                   !9, null
  368    72        INIT_FCALL                                               'preg_match'
         73        SEND_VAL                                                 '%2F%28.%7B1%2C2%7D%29%5CsRSHIFT%5Cs%28.%7B1%2C2%7D%29%5Cs-%3E%5Cs%28.%7B1%2C2%7D%29%2F'
         74        SEND_VAR                                                 !0
         75        SEND_REF                                                 !9
         76        DO_ICALL                                         $49     
         77        ASSIGN                                                   !10, $49
  369    78        COUNT                                            ~51     !9
         79        IS_SMALLER                                               0, ~51
         80      > JMPZ                                                     ~52, ->89
  370    81    >   INIT_ARRAY                                       ~53     5
         82        FETCH_DIM_R                                      ~54     !9, 1
         83        ADD_ARRAY_ELEMENT                                ~53     ~54
         84        FETCH_DIM_R                                      ~55     !9, 2
         85        ADD_ARRAY_ELEMENT                                ~53     ~55
         86        FETCH_DIM_R                                      ~56     !9, 3
         87        ADD_ARRAY_ELEMENT                                ~53     ~56
         88      > RETURN                                                   ~53
  373    89    >   ASSIGN                                                   !11, null
  374    90        INIT_FCALL                                               'preg_match'
         91        SEND_VAL                                                 '%2F%28.%7B1%2C5%7D%29%5Cs-%3E%5Cs%28.%7B1%2C2%7D%29%2F'
         92        SEND_VAR                                                 !0
         93        SEND_REF                                                 !11
         94        DO_ICALL                                         $58     
         95        ASSIGN                                                   !12, $58
  375    96        COUNT                                            ~60     !11
         97        IS_SMALLER                                               0, ~60
         98      > JMPZ                                                     ~61, ->105
  376    99    >   INIT_ARRAY                                       ~62     6
        100        FETCH_DIM_R                                      ~63     !11, 1
        101        ADD_ARRAY_ELEMENT                                ~62     ~63
        102        FETCH_DIM_R                                      ~64     !11, 2
        103        ADD_ARRAY_ELEMENT                                ~62     ~64
        104      > RETURN                                                   ~62
  378   105    > > RETURN                                                   null

End of function operation

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
180.47 ms | 1427 KiB | 20 Q