Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 20, Position 2 = 42
Branch analysis from position: 20
2 jumps found. (Code = 78) Position 1 = 21, Position 2 = 42
Branch analysis from position: 21
1 jumps found. (Code = 42) Position 1 = 20
Branch analysis from position: 20
Branch analysis from position: 42
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 42
filename: /in/UuDQM
function name: (null)
number of ops: 55
compiled vars: !0 = $resp, !1 = $data, !2 = $rates, !3 = $required_rates, !4 = $results, !5 = $id, !6 = $from, !7 = $to, !8 = $buy, !9 = $sell, !10 = $json_data
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
3 0 E > ASSIGN !0, '%7B%0A%22IsSuccess%22%3A+true%2C%0A%22ResponseCode%22%3A+5000%2C%0A%22ResponseMessage%22%3A+%22OK%22%2C%0A%22Data%22%3A+%7B%0A%22result%22%3A+%7B%0A%22RATE_TO_ALL%22%3A+%5B%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22CHF%22%2C%0A%22TO_CURR_NAME%22%3A+%22TRY%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%2245.51%22%2C%0A%22BUY_RATE%22%3A+%2226.24%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22GBP%22%2C%0A%22TO_CURR_NAME%22%3A+%22TRY%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%2250.71%22%2C%0A%22BUY_RATE%22%3A+%2229.24%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22CAD%22%2C%0A%22TO_CURR_NAME%22%3A+%22CHF%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%220.69%22%2C%0A%22BUY_RATE%22%3A+%220.66%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22AUD%22%2C%0A%22TO_CURR_NAME%22%3A+%22TRY%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%2226.63%22%2C%0A%22BUY_RATE%22%3A+%2215.35%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22AUD%22%2C%0A%22TO_CURR_NAME%22%3A+%22GBP%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%220.54%22%2C%0A%22BUY_RATE%22%3A+%220.51%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22AUD%22%2C%0A%22TO_CURR_NAME%22%3A+%22CHF%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%220.60%22%2C%0A%22BUY_RATE%22%3A+%220.57%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22AUD%22%2C%0A%22TO_CURR_NAME%22%3A+%22CAD%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%220.88%22%2C%0A%22BUY_RATE%22%3A+%220.85%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22CAD%22%2C%0A%22TO_CURR_NAME%22%3A+%22TRY%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%2230.88%22%2C%0A%22BUY_RATE%22%3A+%2217.80%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22CAD%22%2C%0A%22TO_CURR_NAME%22%3A+%22GBP%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%220.62%22%2C%0A%22BUY_RATE%22%3A+%220.60%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22CHF%22%2C%0A%22TO_CURR_NAME%22%3A+%22GBP%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%220.92%22%2C%0A%22BUY_RATE%22%3A+%220.88%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22USD%22%2C%0A%22TO_CURR_NAME%22%3A+%22GBP%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%220.83%22%2C%0A%22BUY_RATE%22%3A+%220.80%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22USD%22%2C%0A%22TO_CURR_NAME%22%3A+%22TRY%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%2233.89%22%2C%0A%22BUY_RATE%22%3A+%2222.92%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22CHF%22%2C%0A%22TO_CURR_NAME%22%3A+%22ALL%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%22110.85%22%2C%0A%22BUY_RATE%22%3A+%22107.10%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22CAD%22%2C%0A%22TO_CURR_NAME%22%3A+%22ALL%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%2272.90%22%2C%0A%22BUY_RATE%22%3A+%2270.40%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22AUD%22%2C%0A%22TO_CURR_NAME%22%3A+%22EUR%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%220.62%22%2C%0A%22BUY_RATE%22%3A+%220.60%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22AUD%22%2C%0A%22TO_CURR_NAME%22%3A+%22ALL%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%2264.75%22%2C%0A%22BUY_RATE%22%3A+%2262.55%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22CHF%22%2C%0A%22TO_CURR_NAME%22%3A+%22EUR%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%221.05%22%2C%0A%22BUY_RATE%22%3A+%221.02%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22EUR%22%2C%0A%22TO_CURR_NAME%22%3A+%22ALL%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%22105.35%22%2C%0A%22BUY_RATE%22%3A+%22104.75%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22EUR%22%2C%0A%22TO_CURR_NAME%22%3A+%22GBP%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%220.89%22%2C%0A%22BUY_RATE%22%3A+%220.85%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22EUR%22%2C%0A%22TO_CURR_NAME%22%3A+%22TRY%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%2235.94%22%2C%0A%22BUY_RATE%22%3A+%2224.90%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22GBP%22%2C%0A%22TO_CURR_NAME%22%3A+%22ALL%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%22123.00%22%2C%0A%22BUY_RATE%22%3A+%22117.35%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22TRY%22%2C%0A%22TO_CURR_NAME%22%3A+%22ALL%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%223.81%22%2C%0A%22BUY_RATE%22%3A+%223.10%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22USD%22%2C%0A%22TO_CURR_NAME%22%3A+%22ALL%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%2299.10%22%2C%0A%22BUY_RATE%22%3A+%2297.15%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22USD%22%2C%0A%22TO_CURR_NAME%22%3A+%22AUD%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%221.57%22%2C%0A%22BUY_RATE%22%3A+%221.52%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22USD%22%2C%0A%22TO_CURR_NAME%22%3A+%22CAD%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%221.39%22%2C%0A%22BUY_RATE%22%3A+%221.35%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22USD%22%2C%0A%22TO_CURR_NAME%22%3A+%22CHF%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%220.92%22%2C%0A%22BUY_RATE%22%3A+%220.89%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%2C%0A%7B%0A%22FROM_CURR_NAME%22%3A+%22USD%22%2C%0A%22TO_CURR_NAME%22%3A+%22EUR%22%2C%0A%22TREND_RATE%22%3A+%220%22%2C%0A%22SELL_RATE%22%3A+%220.95%22%2C%0A%22BUY_RATE%22%3A+%220.91%22%2C%0A%22PERCENTAGE_RATE%22%3A+%220.00%22%0A%7D%0A%5D%2C%0A%22LASTUPDATED%22%3A+%2204-11-2023+14%3A30%3A03%22%0A%7D%0A%7D%0A%7D'
232 1 INIT_FCALL 'json_decode'
2 SEND_VAR !0
3 SEND_VAL <true>
4 DO_ICALL $12
5 ASSIGN !1, $12
234 6 INIT_FCALL 'array_reduce'
7 FETCH_DIM_R ~14 !1, 'Data'
8 FETCH_DIM_R ~15 ~14, 'result'
9 FETCH_DIM_R ~16 ~15, 'RATE_TO_ALL'
10 SEND_VAL ~16
11 DECLARE_LAMBDA_FUNCTION ~17 [0]
240 12 SEND_VAL ~17
13 SEND_VAL <array>
234 14 DO_ICALL $18
15 ASSIGN !2, $18
242 16 ASSIGN !3, <array>
248 17 ASSIGN !4, <array>
249 18 ASSIGN !5, 1
250 19 > FE_RESET_R $23 !3, ->42
20 > > FE_FETCH_R $23, $24, ->42
21 > FETCH_LIST_R $25 $24, 'FROM_CURR_NAME'
22 ASSIGN !6, $25
23 FETCH_LIST_R $27 $24, 'TO_CURR_NAME'
24 ASSIGN !7, $27
25 FREE $24
251 26 FETCH_DIM_R ~29 !2, !6
27 FETCH_DIM_R ~30 ~29, !7
28 FETCH_DIM_R ~31 ~30, 'BUY_RATE'
29 ASSIGN !8, ~31
252 30 FETCH_DIM_R ~33 !2, !6
31 FETCH_DIM_R ~34 ~33, !7
32 FETCH_DIM_R ~35 ~34, 'SELL_RATE'
33 ASSIGN !9, ~35
253 34 POST_INC ~38 !5
35 INIT_ARRAY ~39 ~38, 'id'
36 ADD_ARRAY_ELEMENT ~39 !6, 'currency'
37 ADD_ARRAY_ELEMENT ~39 !8, 'buy'
38 ADD_ARRAY_ELEMENT ~39 !9, 'sell'
39 ASSIGN_DIM !4
40 OP_DATA ~39
250 41 > JMP ->20
42 > FE_FREE $23
255 43 INIT_FCALL 'json_encode'
44 INIT_ARRAY ~40 !4, 'Exchange+Rates'
45 SEND_VAL ~40
46 DO_ICALL $41
47 ASSIGN !10, $41
256 48 INIT_FCALL 'json_encode'
49 INIT_ARRAY ~43 !4, 'Exchange+Rates'
50 SEND_VAL ~43
51 SEND_VAL 128
52 DO_ICALL $44
53 ECHO $44
54 > RETURN 1
Dynamic Functions:
Dynamic Function 0
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/UuDQM
function name: {closure}
number of ops: 13
compiled vars: !0 = $acc, !1 = $item
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
234 0 E > RECV !0
1 RECV !1
235 2 FETCH_DIM_R ~2 !1, 'FROM_CURR_NAME'
3 FETCH_DIM_R ~4 !1, 'TO_CURR_NAME'
236 4 FETCH_DIM_R ~6 !1, 'SELL_RATE'
5 INIT_ARRAY ~7 ~6, 'SELL_RATE'
237 6 FETCH_DIM_R ~8 !1, 'BUY_RATE'
7 ADD_ARRAY_ELEMENT ~7 ~8, 'BUY_RATE'
235 8 FETCH_DIM_W $3 !0, ~2
9 ASSIGN_DIM $3, ~4
237 10 OP_DATA ~7
239 11 > RETURN !0
240 12* > RETURN null
End of Dynamic Function 0
Generated using Vulcan Logic Dumper, using php 8.0.0