Finding entry points Branch analysis from position: 0 2 jumps found. (Code = 43) Position 1 = 54, Position 2 = 57 Branch analysis from position: 54 1 jumps found. (Code = 42) Position 1 = 59 Branch analysis from position: 59 1 jumps found. (Code = 42) Position 1 = 73 Branch analysis from position: 73 2 jumps found. (Code = 44) Position 1 = 75, Position 2 = 66 Branch analysis from position: 75 1 jumps found. (Code = 62) Position 1 = -2 Branch analysis from position: 66 2 jumps found. (Code = 44) Position 1 = 75, Position 2 = 66 Branch analysis from position: 75 Branch analysis from position: 66 Branch analysis from position: 57 1 jumps found. (Code = 42) Position 1 = 73 Branch analysis from position: 73 filename: /in/eW0SX function name: (null) number of ops: 94 compiled vars: !0 = $fp, !1 = $player, !2 = $pos, !3 = $playerPos, !4 = $opPos, !5 = $board, !6 = $i, !7 = $move line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 2 0 E > ECHO -9223372036854775808 3 1 ECHO 9.22337e+18 86 2 INIT_FCALL 'define' 3 SEND_VAL 'CLEAR' 4 SEND_VAL '-' 5 DO_ICALL 87 6 INIT_FCALL 'define' 7 SEND_VAL 'P1' 8 SEND_VAL 'r' 9 DO_ICALL 88 10 INIT_FCALL 'define' 11 SEND_VAL 'P2' 12 SEND_VAL 'g' 13 DO_ICALL 89 14 INIT_FCALL 'define' 15 SEND_VAL 'WALL' 16 SEND_VAL '%23' 17 DO_ICALL 104 18 INIT_FCALL 'fopen' 19 SEND_VAL 'php%3A%2F%2Fstdin' 20 SEND_VAL 'r' 21 DO_ICALL $12 22 ASSIGN !0, $12 106 23 INIT_FCALL 'fgets' 24 SEND_VAR !0 25 DO_ICALL $14 26 ASSIGN !1, $14 108 27 INIT_FCALL 'trim' 28 INIT_FCALL 'fgets' 29 SEND_VAR !0 30 DO_ICALL $16 31 SEND_VAR $16 32 DO_ICALL $17 33 ASSIGN !2, $17 109 34 INIT_FCALL_BY_NAME 'split' 35 SEND_VAL_EX '+' 36 SEND_VAR_EX !2 37 DO_FCALL 0 $19 38 ASSIGN !2, $19 110 39 INIT_FCALL 'getplayerpos' 40 SEND_VAR !1 41 SEND_VAR !2 42 DO_FCALL 0 $21 43 ASSIGN !3, $21 111 44 INIT_FCALL 'getplayerpos' 45 INIT_FCALL 'ord' 46 SEND_VAR !1 47 DO_ICALL $23 48 INIT_FCALL 'ord' 49 FETCH_CONSTANT ~24 'P1' 50 SEND_VAL ~24 51 DO_ICALL $25 52 IS_EQUAL $23, $25 53 > JMPZ ~26, ->57 54 > FETCH_CONSTANT ~27 'P2' 55 QM_ASSIGN ~28 ~27 56 > JMP ->59 57 > FETCH_CONSTANT ~29 'P1' 58 QM_ASSIGN ~28 ~29 59 > SEND_VAL ~28 60 SEND_VAR !2 61 DO_FCALL 0 $30 62 ASSIGN !4, $30 112 63 ASSIGN !5, <array> 113 64 ASSIGN !6, 0 65 > JMP ->73 114 66 > INIT_FCALL 'fscanf' 67 SEND_VAR !0 68 SEND_VAL '%25s' 69 FETCH_DIM_W $34 !5, !6 70 SEND_REF $34 71 DO_ICALL 113 72 PRE_INC !6 73 > IS_SMALLER !6, 15 74 > JMPNZ ~37, ->66 116 75 > INIT_FCALL 'print_r' 76 SEND_VAR !5 77 DO_ICALL 117 78 NEW $39 'Board' 79 SEND_VAR_EX !5 80 DO_FCALL 0 81 ASSIGN !5, $39 118 82 INIT_FCALL 'print_r' 83 SEND_VAR !5 84 DO_ICALL 119 85 INIT_FCALL 'nextmove' 86 SEND_VAR !1 87 SEND_VAR !3 88 SEND_VAR !4 89 SEND_VAR !5 90 DO_FCALL 0 $43 91 ASSIGN !7, $43 120 92 ECHO !7 121 93 > RETURN 1 Function nextmove: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/eW0SX function name: nextMove number of ops: 83 compiled vars: !0 = $player, !1 = $pos, !2 = $opPos, !3 = $board, !4 = $moves line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 91 0 E > RECV !0 1 RECV !1 2 RECV !2 3 RECV !3 92 4 ASSIGN !4, <array> 93 5 INIT_FCALL 'array_push' 6 SEND_REF !4 7 NEW $6 'Move' 8 NEW $7 'Pos' 9 CHECK_FUNC_ARG 10 FETCH_OBJ_FUNC_ARG $8 !1, 'x' 11 SEND_FUNC_ARG $8 12 FETCH_OBJ_R ~9 !1, 'y' 13 SUB ~10 ~9, 1 14 SEND_VAL_EX ~10 15 DO_FCALL 0 16 SEND_VAR_NO_REF_EX $7 17 SEND_VAL_EX 'UP' 18 SEND_VAL_EX -1 19 DO_FCALL 0 20 SEND_VAR $6 21 DO_ICALL 94 22 INIT_FCALL 'array_push' 23 SEND_REF !4 24 NEW $14 'Move' 25 NEW $15 'Pos' 26 CHECK_FUNC_ARG 27 FETCH_OBJ_FUNC_ARG $16 !1, 'x' 28 SEND_FUNC_ARG $16 29 FETCH_OBJ_R ~17 !1, 'y' 30 ADD ~18 ~17, 1 31 SEND_VAL_EX ~18 32 DO_FCALL 0 33 SEND_VAR_NO_REF_EX $15 34 SEND_VAL_EX 'DOWN' 35 SEND_VAL_EX -1 36 DO_FCALL 0 37 SEND_VAR $14 38 DO_ICALL 95 39 INIT_FCALL 'array_push' 40 SEND_REF !4 41 NEW $22 'Move' 42 NEW $23 'Pos' 43 FETCH_OBJ_R ~24 !1, 'x' 44 SUB ~25 ~24, 1 45 SEND_VAL_EX ~25 46 CHECK_FUNC_ARG 47 FETCH_OBJ_FUNC_ARG $26 !1, 'y' 48 SEND_FUNC_ARG $26 49 DO_FCALL 0 50 SEND_VAR_NO_REF_EX $23 51 SEND_VAL_EX 'LEFT' 52 SEND_VAL_EX -1 53 DO_FCALL 0 54 SEND_VAR $22 55 DO_ICALL 96 56 INIT_FCALL 'array_push' 57 SEND_REF !4 58 NEW $30 'Move' 59 NEW $31 'Pos' 60 FETCH_OBJ_R ~32 !1, 'x' 61 ADD ~33 ~32, 1 62 SEND_VAL_EX ~33 63 CHECK_FUNC_ARG 64 FETCH_OBJ_FUNC_ARG $34 !1, 'y' 65 SEND_FUNC_ARG $34 66 DO_FCALL 0 67 SEND_VAR_NO_REF_EX $31 68 SEND_VAL_EX 'RIGHT' 69 SEND_VAL_EX -1 70 DO_FCALL 0 71 SEND_VAR $30 72 DO_ICALL 97 73 INIT_STATIC_METHOD_CALL 'Move', 'maxValDirection' 74 SEND_VAR !4 75 SEND_VAR !3 76 SEND_VAR !0 77 SEND_VAR !1 78 SEND_VAR !2 79 DO_FCALL 0 $38 80 FETCH_OBJ_R ~39 $38, 'direction' 81 > RETURN ~39 98 82* > RETURN null End of function nextmove Function getplayerpos: Finding entry points Branch analysis from position: 0 2 jumps found. (Code = 43) Position 1 = 11, Position 2 = 21 Branch analysis from position: 11 1 jumps found. (Code = 42) Position 1 = 30 Branch analysis from position: 30 1 jumps found. (Code = 62) Position 1 = -2 Branch analysis from position: 21 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/eW0SX function name: getPlayerPos number of ops: 32 compiled vars: !0 = $player, !1 = $pos line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 100 0 E > RECV !0 1 RECV !1 101 2 INIT_FCALL 'ord' 3 SEND_VAR !0 4 DO_ICALL $2 5 INIT_FCALL 'ord' 6 FETCH_CONSTANT ~3 'P1' 7 SEND_VAL ~3 8 DO_ICALL $4 9 IS_EQUAL $2, $4 10 > JMPZ ~5, ->21 11 > NEW $6 'Pos' 12 CHECK_FUNC_ARG 13 FETCH_DIM_FUNC_ARG $7 !1, 1 14 SEND_FUNC_ARG $7 15 CHECK_FUNC_ARG 16 FETCH_DIM_FUNC_ARG $8 !1, 0 17 SEND_FUNC_ARG $8 18 DO_FCALL 0 19 QM_ASSIGN ~10 $6 20 > JMP ->30 21 > NEW $11 'Pos' 22 CHECK_FUNC_ARG 23 FETCH_DIM_FUNC_ARG $12 !1, 3 24 SEND_FUNC_ARG $12 25 CHECK_FUNC_ARG 26 FETCH_DIM_FUNC_ARG $13 !1, 2 27 SEND_FUNC_ARG $13 28 DO_FCALL 0 29 QM_ASSIGN ~10 $11 30 > > RETURN ~10 102 31* > RETURN null End of function getplayerpos Class Cell: Function __construct: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/eW0SX function name: __construct number of ops: 7 compiled vars: !0 = $pos, !1 = $val line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 8 0 E > RECV !0 1 RECV !1 9 2 ASSIGN_OBJ 'pos' 3 OP_DATA !0 10 4 ASSIGN_OBJ 'val' 5 OP_DATA !1 11 6 > RETURN null End of function __construct End of class Cell. Class Board: Function __construct: Finding entry points Branch analysis from position: 0 2 jumps found. (Code = 77) Position 1 = 5, Position 2 = 30 Branch analysis from position: 5 2 jumps found. (Code = 78) Position 1 = 6, Position 2 = 30 Branch analysis from position: 6 2 jumps found. (Code = 77) Position 1 = 14, Position 2 = 28 Branch analysis from position: 14 2 jumps found. (Code = 78) Position 1 = 15, Position 2 = 28 Branch analysis from position: 15 1 jumps found. (Code = 42) Position 1 = 14 Branch analysis from position: 14 Branch analysis from position: 28 1 jumps found. (Code = 42) Position 1 = 5 Branch analysis from position: 5 Branch analysis from position: 28 Branch analysis from position: 30 1 jumps found. (Code = 62) Position 1 = -2 Branch analysis from position: 30 filename: /in/eW0SX function name: __construct number of ops: 32 compiled vars: !0 = $raw_array, !1 = $i, !2 = $row, !3 = $j, !4 = $cell line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 17 0 E > RECV !0 18 1 ASSIGN_OBJ 'cells' 2 OP_DATA <array> 19 3 ASSIGN !1, 0 20 4 > FE_RESET_R $7 !0, ->30 5 > > FE_FETCH_R $7, !2, ->30 21 6 > ASSIGN !3, 0 22 7 FETCH_OBJ_W $9 'cells' 8 ASSIGN_DIM $9, !1 9 OP_DATA <array> 23 10 INIT_FCALL 'str_split' 11 SEND_VAR !2 12 DO_ICALL $11 13 > FE_RESET_R $12 $11, ->28 14 > > FE_FETCH_R $12, !4, ->28 24 15 > NEW $16 'Cell' 16 NEW $17 'Pos' 17 SEND_VAR_EX !1 18 SEND_VAR_EX !3 19 DO_FCALL 0 20 SEND_VAR_NO_REF_EX $17 21 SEND_VAR_EX !4 22 DO_FCALL 0 23 FETCH_OBJ_W $13 'cells' 24 FETCH_DIM_W $14 $13, !1 25 ASSIGN_DIM $14, !3 26 OP_DATA $16 23 27 > JMP ->14 28 > FE_FREE $12 20 29 > JMP ->5 30 > FE_FREE $7 27 31 > RETURN null End of function __construct End of class Board. Class Pos: Function __construct: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/eW0SX function name: __construct number of ops: 7 compiled vars: !0 = $x, !1 = $y line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 34 0 E > RECV !0 1 RECV !1 35 2 ASSIGN_OBJ 'x' 3 OP_DATA !0 36 4 ASSIGN_OBJ 'y' 5 OP_DATA !1 37 6 > RETURN null End of function __construct Function dist: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/eW0SX function name: dist number of ops: 21 compiled vars: !0 = $pos line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 39 0 E > RECV !0 40 1 INIT_FCALL 'sqrt' 2 INIT_FCALL 'pow' 3 FETCH_OBJ_R ~1 'x' 4 FETCH_OBJ_R ~2 !0, 'x' 5 SUB ~3 ~1, ~2 6 SEND_VAL ~3 7 SEND_VAL 2 8 DO_ICALL $4 9 INIT_FCALL 'pow' 10 FETCH_OBJ_R ~5 'y' 11 FETCH_OBJ_R ~6 !0, 'y' 12 SUB ~7 ~5, ~6 13 SEND_VAL ~7 14 SEND_VAL 2 15 DO_ICALL $8 16 ADD ~9 $4, $8 17 SEND_VAL ~9 18 DO_ICALL $10 19 > RETURN $10 41 20* > RETURN null End of function dist End of class Pos. Class Move: Function initializeempty: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/eW0SX function name: initializeEmpty number of ops: 7 compiled vars: none line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 50 0 E > NEW $0 'Move' 1 SEND_VAL_EX <array> 2 SEND_VAL_EX 'NONE' 3 SEND_VAL_EX -1 4 DO_FCALL 0 5 > RETURN $0 51 6* > RETURN null End of function initializeempty Function __construct: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/eW0SX function name: __construct number of ops: 10 compiled vars: !0 = $pos, !1 = $direction, !2 = $value line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 53 0 E > RECV !0 1 RECV !1 2 RECV !2 54 3 ASSIGN_OBJ 'pos' 4 OP_DATA !0 55 5 ASSIGN_OBJ 'value' 6 OP_DATA !2 56 7 ASSIGN_OBJ 'direction' 8 OP_DATA !1 57 9 > RETURN null End of function __construct Function compare: Finding entry points Branch analysis from position: 0 2 jumps found. (Code = 43) Position 1 = 5, Position 2 = 7 Branch analysis from position: 5 1 jumps found. (Code = 42) Position 1 = 9 Branch analysis from position: 9 1 jumps found. (Code = 62) Position 1 = -2 Branch analysis from position: 7 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/eW0SX function name: compare number of ops: 11 compiled vars: !0 = $move line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 59 0 E > RECV !0 60 1 FETCH_OBJ_R ~1 !0, 'value' 2 FETCH_OBJ_R ~2 'value' 3 IS_SMALLER ~2, ~1 4 > JMPZ ~3, ->7 5 > QM_ASSIGN ~4 !0 6 > JMP ->9 7 > FETCH_THIS ~5 8 QM_ASSIGN ~4 ~5 9 > > RETURN ~4 61 10* > RETURN null End of function compare Function maxvaldirection: Finding entry points Branch analysis from position: 0 2 jumps found. (Code = 77) Position 1 = 9, Position 2 = 21 Branch analysis from position: 9 2 jumps found. (Code = 78) Position 1 = 10, Position 2 = 21 Branch analysis from position: 10 1 jumps found. (Code = 42) Position 1 = 9 Branch analysis from position: 9 Branch analysis from position: 21 1 jumps found. (Code = 62) Position 1 = -2 Branch analysis from position: 21 filename: /in/eW0SX function name: maxValDirection number of ops: 24 compiled vars: !0 = $moves, !1 = $board, !2 = $player, !3 = $pos, !4 = $opPos, !5 = $best, !6 = $m line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 63 0 E > RECV !0 1 RECV !1 2 RECV !2 3 RECV !3 4 RECV !4 64 5 INIT_STATIC_METHOD_CALL 'Move', 'initializeEmpty' 6 DO_FCALL 0 $7 7 ASSIGN !5, $7 65 8 > FE_RESET_R $9 !0, ->21 9 > > FE_FETCH_R $9, !6, ->21 66 10 > INIT_METHOD_CALL !6, 'setValue' 11 SEND_VAR_EX !1 12 SEND_VAR_EX !2 13 SEND_VAR_EX !3 14 SEND_VAR_E
Generated using Vulcan Logic Dumper, using php 8.0.0