Files
mev-beta/tests/out/FlashLoanReceiverSecure.t.sol/MockBalancerVault.json
Krypto Kajun c7142ef671 fix(critical): fix empty token graph + aggressive settings for 24h execution
CRITICAL BUG FIX:
- MultiHopScanner.updateTokenGraph() was EMPTY - adding no pools!
- Result: Token graph had 0 pools, found 0 arbitrage paths
- All opportunities showed estimatedProfitETH: 0.000000

FIX APPLIED:
- Populated token graph with 8 high-liquidity Arbitrum pools:
  * WETH/USDC (0.05% and 0.3% fees)
  * USDC/USDC.e (0.01% - common arbitrage)
  * ARB/USDC, WETH/ARB, WETH/USDT
  * WBTC/WETH, LINK/WETH
- These are REAL verified pool addresses with high volume

AGGRESSIVE THRESHOLD CHANGES:
- Min profit: 0.0001 ETH → 0.00001 ETH (10x lower, ~$0.02)
- Min ROI: 0.05% → 0.01% (5x lower)
- Gas multiplier: 5x → 1.5x (3.3x lower safety margin)
- Max slippage: 3% → 5% (67% higher tolerance)
- Max paths: 100 → 200 (more thorough scanning)
- Cache expiry: 2min → 30sec (fresher opportunities)

EXPECTED RESULTS (24h):
- 20-50 opportunities with profit > $0.02 (was 0)
- 5-15 execution attempts (was 0)
- 1-2 successful executions (was 0)
- $0.02-$0.20 net profit (was $0)

WARNING: Aggressive settings may result in some losses
Monitor closely for first 6 hours and adjust if needed

Target: First profitable execution within 24 hours

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-29 04:18:27 -05:00

1 line
35 KiB
JSON

{"abi":[{"type":"function","name":"flashLoan","inputs":[{"name":"recipient","type":"address","internalType":"address"},{"name":"tokens","type":"address[]","internalType":"address[]"},{"name":"amounts","type":"uint256[]","internalType":"uint256[]"},{"name":"userData","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"}],"bytecode":{"object":"0x6080604052348015600e575f5ffd5b506107588061001c5f395ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80635c38449e1461002d575b5f5ffd5b61004061003b3660046104ef565b610042565b005b5f5b835181101561010a5783818151811061005f5761005f6105ec565b60200260200101516001600160a01b031663a9059cbb86858481518110610088576100886105ec565b60200260200101516040518363ffffffff1660e01b81526004016100c19291906001600160a01b03929092168252602082015260400190565b6020604051808303815f875af11580156100dd573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101019190610600565b50600101610044565b505f835167ffffffffffffffff811115610126576101266103b1565b60405190808252806020026020018201604052801561014f578160200160208202803683370190505b5090505f5b8451811015610183575f828281518110610170576101706105ec565b6020908102919091010152600101610154565b50846001600160a01b031663f04f270761019c866102ef565b8584866040518563ffffffff1660e01b81526004016101be9493929190610660565b5f604051808303815f87803b1580156101d5575f5ffd5b505af11580156101e7573d5f5f3e3d5ffd5b505f925050505b84518110156102e757838181518110610209576102096105ec565b6020026020010151858281518110610223576102236105ec565b60209081029190910101516040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015610271573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610295919061070b565b10156102df5760405162461bcd60e51b8152602060048201526015602482015274119b185cda081b1bd85b881b9bdd081c995c185a59605a1b604482015260640160405180910390fd5b6001016101ee565b505050505050565b60605f825167ffffffffffffffff81111561030c5761030c6103b1565b604051908082528060200260200182016040528015610335578160200160208202803683370190505b5090505f5b835181101561038f57838181518110610355576103556105ec565b602002602001015182828151811061036f5761036f6105ec565b6001600160a01b039092166020928302919091019091015260010161033a565b5092915050565b80356001600160a01b03811681146103ac575f5ffd5b919050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156103ee576103ee6103b1565b604052919050565b5f67ffffffffffffffff82111561040f5761040f6103b1565b5060051b60200190565b5f82601f830112610428575f5ffd5b813561043b610436826103f6565b6103c5565b8082825260208201915060208360051b86010192508583111561045c575f5ffd5b602085015b83811015610479578035835260209283019201610461565b5095945050505050565b5f82601f830112610492575f5ffd5b813567ffffffffffffffff8111156104ac576104ac6103b1565b6104bf601f8201601f19166020016103c5565b8181528460208386010111156104d3575f5ffd5b816020850160208301375f918101602001919091529392505050565b5f5f5f5f60808587031215610502575f5ffd5b61050b85610396565b9350602085013567ffffffffffffffff811115610526575f5ffd5b8501601f81018713610536575f5ffd5b8035610544610436826103f6565b8082825260208201915060208360051b850101925089831115610565575f5ffd5b6020840193505b8284101561058e5761057d84610396565b82526020938401939091019061056c565b9550505050604085013567ffffffffffffffff8111156105ac575f5ffd5b6105b887828801610419565b925050606085013567ffffffffffffffff8111156105d4575f5ffd5b6105e087828801610483565b91505092959194509250565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610610575f5ffd5b8151801515811461061f575f5ffd5b9392505050565b5f8151808452602084019350602083015f5b82811015610656578151865260209586019590910190600101610638565b5093949350505050565b608080825285519082018190525f90602087019060a0840190835b818110156106a25783516001600160a01b031683526020938401939092019160010161067b565b505083810360208501526106b68188610626565b91505082810360408401526106cb8186610626565b905082810360608401525f84518083528060208701602085015e5f602082850101526020601f19601f830116840101915050809250505095945050505050565b5f6020828403121561071b575f5ffd5b505191905056fea264697066735822122065da003065e62fc43c05eb799d8ded8b46602fc217c39ec15557c76b40ff475764736f6c634300081e0033","sourceMap":"512:1340:31:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80635c38449e1461002d575b5f5ffd5b61004061003b3660046104ef565b610042565b005b5f5b835181101561010a5783818151811061005f5761005f6105ec565b60200260200101516001600160a01b031663a9059cbb86858481518110610088576100886105ec565b60200260200101516040518363ffffffff1660e01b81526004016100c19291906001600160a01b03929092168252602082015260400190565b6020604051808303815f875af11580156100dd573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101019190610600565b50600101610044565b505f835167ffffffffffffffff811115610126576101266103b1565b60405190808252806020026020018201604052801561014f578160200160208202803683370190505b5090505f5b8451811015610183575f828281518110610170576101706105ec565b6020908102919091010152600101610154565b50846001600160a01b031663f04f270761019c866102ef565b8584866040518563ffffffff1660e01b81526004016101be9493929190610660565b5f604051808303815f87803b1580156101d5575f5ffd5b505af11580156101e7573d5f5f3e3d5ffd5b505f925050505b84518110156102e757838181518110610209576102096105ec565b6020026020010151858281518110610223576102236105ec565b60209081029190910101516040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015610271573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610295919061070b565b10156102df5760405162461bcd60e51b8152602060048201526015602482015274119b185cda081b1bd85b881b9bdd081c995c185a59605a1b604482015260640160405180910390fd5b6001016101ee565b505050505050565b60605f825167ffffffffffffffff81111561030c5761030c6103b1565b604051908082528060200260200182016040528015610335578160200160208202803683370190505b5090505f5b835181101561038f57838181518110610355576103556105ec565b602002602001015182828151811061036f5761036f6105ec565b6001600160a01b039092166020928302919091019091015260010161033a565b5092915050565b80356001600160a01b03811681146103ac575f5ffd5b919050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156103ee576103ee6103b1565b604052919050565b5f67ffffffffffffffff82111561040f5761040f6103b1565b5060051b60200190565b5f82601f830112610428575f5ffd5b813561043b610436826103f6565b6103c5565b8082825260208201915060208360051b86010192508583111561045c575f5ffd5b602085015b83811015610479578035835260209283019201610461565b5095945050505050565b5f82601f830112610492575f5ffd5b813567ffffffffffffffff8111156104ac576104ac6103b1565b6104bf601f8201601f19166020016103c5565b8181528460208386010111156104d3575f5ffd5b816020850160208301375f918101602001919091529392505050565b5f5f5f5f60808587031215610502575f5ffd5b61050b85610396565b9350602085013567ffffffffffffffff811115610526575f5ffd5b8501601f81018713610536575f5ffd5b8035610544610436826103f6565b8082825260208201915060208360051b850101925089831115610565575f5ffd5b6020840193505b8284101561058e5761057d84610396565b82526020938401939091019061056c565b9550505050604085013567ffffffffffffffff8111156105ac575f5ffd5b6105b887828801610419565b925050606085013567ffffffffffffffff8111156105d4575f5ffd5b6105e087828801610483565b91505092959194509250565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610610575f5ffd5b8151801515811461061f575f5ffd5b9392505050565b5f8151808452602084019350602083015f5b82811015610656578151865260209586019590910190600101610638565b5093949350505050565b608080825285519082018190525f90602087019060a0840190835b818110156106a25783516001600160a01b031683526020938401939092019160010161067b565b505083810360208501526106b68188610626565b91505082810360408401526106cb8186610626565b905082810360608401525f84518083528060208701602085015e5f602082850101526020601f19601f830116840101915050809250505095945050505050565b5f6020828403121561071b575f5ffd5b505191905056fea264697066735822122065da003065e62fc43c05eb799d8ded8b46602fc217c39ec15557c76b40ff475764736f6c634300081e0033","sourceMap":"512:1340:31:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;545:965;;;;;;:::i;:::-;;:::i;:::-;;;759:6;754:115;775:6;:13;771:1;:17;754:115;;;816:6;823:1;816:9;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;809:26:31;;836:9;847:7;855:1;847:10;;;;;;;;:::i;:::-;;;;;;;809:49;;;;;;;;;;;;;;;-1:-1:-1;;;;;3781:32:32;;;;3763:51;;3845:2;3830:18;;3823:34;3751:2;3736:18;;3589:274;809:49:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;790:3:31;;754:115;;;;912:27;956:6;:13;942:28;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;942:28:31;-1:-1:-1;912:58:31;-1:-1:-1;985:6:31;980:106;1001:6;:13;997:1;:17;980:106;;;1051:1;1035:10;1046:1;1035:13;;;;;;;;:::i;:::-;;;;;;;;;;:17;1016:3;;980:106;;;;1116:9;-1:-1:-1;;;;;1096:47:31;;1157:29;1179:6;1157:21;:29::i;:::-;1200:7;1221:10;1245:8;1096:167;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1307:6:31;;-1:-1:-1;;;1302:202:31;1323:6;:13;1319:1;:17;1302:202;;;1428:7;1436:1;1428:10;;;;;;;;:::i;:::-;;;;;;;1389:6;1396:1;1389:9;;;;;;;;:::i;:::-;;;;;;;;;;;1382:42;;-1:-1:-1;;;1382:42:31;;1418:4;1382:42;;;6174:51:32;-1:-1:-1;;;;;1382:27:31;;;;;;6147:18:32;;1382:42:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:56;;1357:136;;;;-1:-1:-1;;;1357:136:31;;6627:2:32;1357:136:31;;;6609:21:32;6666:2;6646:18;;;6639:30;-1:-1:-1;;;6685:18:32;;;6678:51;6746:18;;1357:136:31;;;;;;;;1338:3;;1302:202;;;;704:806;545:965;;;;:::o;1516:334::-;1618:15;1649:27;1692:6;:13;1679:27;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1679:27:31;-1:-1:-1;1649:57:31;-1:-1:-1;1721:6:31;1716:100;1737:6;:13;1733:1;:17;1716:100;;;1795:6;1802:1;1795:9;;;;;;;;:::i;:::-;;;;;;;1771:11;1783:1;1771:14;;;;;;;;:::i;:::-;-1:-1:-1;;;;;1771:34:31;;;:14;;;;;;;;;;;:34;1752:3;;1716:100;;;-1:-1:-1;1832:11:31;1516:334;-1:-1:-1;;1516:334:31:o;14:173:32:-;82:20;;-1:-1:-1;;;;;131:31:32;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:127::-;253:10;248:3;244:20;241:1;234:31;284:4;281:1;274:15;308:4;305:1;298:15;324:275;395:2;389:9;460:2;441:13;;-1:-1:-1;;437:27:32;425:40;;495:18;480:34;;516:22;;;477:62;474:88;;;542:18;;:::i;:::-;578:2;571:22;324:275;;-1:-1:-1;324:275:32:o;604:183::-;664:4;697:18;689:6;686:30;683:56;;;719:18;;:::i;:::-;-1:-1:-1;764:1:32;760:14;776:4;756:25;;604:183::o;792:669::-;846:5;899:3;892:4;884:6;880:17;876:27;866:55;;917:1;914;907:12;866:55;957:6;944:20;984:64;1000:47;1040:6;1000:47;:::i;:::-;984:64;:::i;:::-;1072:3;1096:6;1091:3;1084:19;1128:4;1123:3;1119:14;1112:21;;1189:4;1179:6;1176:1;1172:14;1164:6;1160:27;1156:38;1142:52;;1217:3;1209:6;1206:15;1203:35;;;1234:1;1231;1224:12;1203:35;1270:4;1262:6;1258:17;1284:146;1300:6;1295:3;1292:15;1284:146;;;1368:17;;1356:30;;1415:4;1406:14;;;;1317;1284:146;;;-1:-1:-1;1448:7:32;792:669;-1:-1:-1;;;;;792:669:32:o;1466:558::-;1508:5;1561:3;1554:4;1546:6;1542:17;1538:27;1528:55;;1579:1;1576;1569:12;1528:55;1619:6;1606:20;1649:18;1641:6;1638:30;1635:56;;;1671:18;;:::i;:::-;1715:59;1762:2;1739:17;;-1:-1:-1;;1735:31:32;1768:4;1731:42;1715:59;:::i;:::-;1799:6;1790:7;1783:23;1853:3;1846:4;1837:6;1829;1825:19;1821:30;1818:39;1815:59;;;1870:1;1867;1860:12;1815:59;1935:6;1928:4;1920:6;1916:17;1909:4;1900:7;1896:18;1883:59;1991:1;1962:20;;;1984:4;1958:31;1951:42;;;;1966:7;1466:558;-1:-1:-1;;;1466:558:32:o;2029:1423::-;2174:6;2182;2190;2198;2251:3;2239:9;2230:7;2226:23;2222:33;2219:53;;;2268:1;2265;2258:12;2219:53;2291:29;2310:9;2291:29;:::i;:::-;2281:39;;2371:2;2360:9;2356:18;2343:32;2398:18;2390:6;2387:30;2384:50;;;2430:1;2427;2420:12;2384:50;2453:22;;2506:4;2498:13;;2494:27;-1:-1:-1;2484:55:32;;2535:1;2532;2525:12;2484:55;2575:2;2562:16;2598:64;2614:47;2654:6;2614:47;:::i;2598:64::-;2684:3;2708:6;2703:3;2696:19;2740:2;2735:3;2731:12;2724:19;;2795:2;2785:6;2782:1;2778:14;2774:2;2770:23;2766:32;2752:46;;2821:7;2813:6;2810:19;2807:39;;;2842:1;2839;2832:12;2807:39;2874:2;2870;2866:11;2855:22;;2886:148;2902:6;2897:3;2894:15;2886:148;;;2968:23;2987:3;2968:23;:::i;:::-;2956:36;;3021:2;2919:12;;;;3012;;;;2886:148;;;3053:5;-1:-1:-1;;;;3111:2:32;3096:18;;3083:32;3140:18;3127:32;;3124:52;;;3172:1;3169;3162:12;3124:52;3195:63;3250:7;3239:8;3228:9;3224:24;3195:63;:::i;:::-;3185:73;;;3311:2;3300:9;3296:18;3283:32;3340:18;3330:8;3327:32;3324:52;;;3372:1;3369;3362:12;3324:52;3395:51;3438:7;3427:8;3416:9;3412:24;3395:51;:::i;:::-;3385:61;;;2029:1423;;;;;;;:::o;3457:127::-;3518:10;3513:3;3509:20;3506:1;3499:31;3549:4;3546:1;3539:15;3573:4;3570:1;3563:15;3868:277;3935:6;3988:2;3976:9;3967:7;3963:23;3959:32;3956:52;;;4004:1;4001;3994:12;3956:52;4036:9;4030:16;4089:5;4082:13;4075:21;4068:5;4065:32;4055:60;;4111:1;4108;4101:12;4055:60;4134:5;3868:277;-1:-1:-1;;;3868:277:32:o;4150:420::-;4203:3;4241:5;4235:12;4268:6;4263:3;4256:19;4300:4;4295:3;4291:14;4284:21;;4339:4;4332:5;4328:16;4362:1;4372:173;4386:6;4383:1;4380:13;4372:173;;;4447:13;;4435:26;;4490:4;4481:14;;;;4518:17;;;;4408:1;4401:9;4372:173;;;-1:-1:-1;4561:3:32;;4150:420;-1:-1:-1;;;;4150:420:32:o;4575:1448::-;4983:3;4996:22;;;5067:13;;4968:19;;;5089:22;;;4935:4;;5181;5169:17;;;5142:3;5127:19;;;4935:4;5214:199;5228:6;5225:1;5222:13;5214:199;;;5293:13;;-1:-1:-1;;;;;5289:39:32;5277:52;;5358:4;5386:17;;;;5349:14;;;;5325:1;5243:9;5214:199;;;5218:3;;5460:9;5455:3;5451:19;5444:4;5433:9;5429:20;5422:49;5494:41;5531:3;5523:6;5494:41;:::i;:::-;5480:55;;;5583:9;5575:6;5571:22;5566:2;5555:9;5551:18;5544:50;5617:44;5654:6;5646;5617:44;:::i;:::-;5603:58;;5709:9;5701:6;5697:22;5692:2;5681:9;5677:18;5670:50;5740:1;5772:6;5766:13;5803:8;5795:6;5788:24;5865:8;5858:4;5850:6;5846:17;5839:4;5831:6;5827:17;5821:53;5924:1;5917:4;5906:8;5898:6;5894:21;5890:32;5883:43;5992:4;5985:2;5981:7;5976:2;5966:8;5962:17;5958:31;5950:6;5946:44;5942:55;5935:62;;;6014:3;6006:11;;;;4575:1448;;;;;;;:::o;6236:184::-;6306:6;6359:2;6347:9;6338:7;6334:23;6330:32;6327:52;;;6375:1;6372;6365:12;6327:52;-1:-1:-1;6398:16:32;;6236:184;-1:-1:-1;6236:184:32:o","linkReferences":{}},"methodIdentifiers":{"flashLoan(address,address[],uint256[],bytes)":"5c38449e"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"tokens\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes\",\"name\":\"userData\",\"type\":\"bytes\"}],\"name\":\"flashLoan\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"title\":\"Mock Balancer Vault for Testing\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"tests/contracts/FlashLoanReceiverSecure.t.sol\":\"MockBalancerVault\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@openzeppelin/=lib/openzeppelin-contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":halmos-cheatcodes/=lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\"]},\"sources\":{\"contracts/balancer/FlashLoanReceiverSecure.sol\":{\"keccak256\":\"0x0fce6a56d36f528232b049416a54e922e5b6875d8772001ea42101a0313a7a73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://431552cc7357e6246f15a3e00dd161e0f985175002dbd59300b061188e425d1c\",\"dweb:/ipfs/QmQUe2GK85PmeR6A2bTa6edET1HW276KfEJFt8Um1Z577d\"]},\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x4b2a5a85e045dcf6a082700c7252e43854c2eed88f860aaa18ec1e85218ae2bf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://98d060ed5be569a92d908fc358149039dc8f833d61973aa1b9d1d8235676bf6d\",\"dweb:/ipfs/QmaWQpn5dJmbMS5skwmPPMeUWZG35BLkignPpcA3zyagEs\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0xd8eec16034b53b52c90a3d720e121ce7d30d64cc57d854db7d817d5b382dda43\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://612780755e32668c7e3b747d94d16c7291101144e084dd9ee563f071711e99e3\",\"dweb:/ipfs/QmQgtFJXEmDtSHT7tZQTMbb6PCDpq5UDYFvrBnWk1Xo2SY\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0xae394f477769a38276d98d4854bc865fc8d281edbd4e72167507adb8236812aa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://34a0e609a4ec617b5c349f5e89a3352810cc5e4d3adaf939b32a27e4a5e46de2\",\"dweb:/ipfs/QmPfjimWAGGb6rzDjNMtLeZ93JJbCJJMov5gaNKyTy1doe\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0x0fa6ec03602648b62cce41aab2096e6b7e052f2846075d967b6958dd586db746\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cd84e2ca9c1eaed6b76768cc12bb8c1af8289170ea8b7706f58d516460d79c41\",\"dweb:/ipfs/QmQ7BK7co6DE4eWUqMyv11s5eHYkS1tyx8tDSZGZVtf2aK\"]},\"lib/forge-std/src/StdConstants.sol\":{\"keccak256\":\"0x319ccdabfa2c0b2428301445873270ffea20f0e039d4fd5e6eeba65158e4e534\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b633f9d3a719e1d035ce7daa6cc051ddf89a72d34200d14cec37728e245cdabc\",\"dweb:/ipfs/QmRP7HQJpHMx1CsFrY8tXVVx1DQmi2dcb2BoGfiWaA923r\"]},\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]},\"lib/forge-std/src/StdInvariant.sol\":{\"keccak256\":\"0x4dab3021edfa9511bbdd80c48f060ef62eaf457f99eaf841f561fc2557d9a08d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://07668628673174cf8f27f8f4e1f862bab775013ec247eb34f698c5005f229391\",\"dweb:/ipfs/QmPJsiiYwmCZXMsHmQv5tg8VF3CAhNdat7WnKLTWZZH2v5\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0xbc0132abe1c2accc2867c0f03667afffdf92f3e95a581bb03c9557eaa38ea500\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://eb6fab37dc73c219cfbb7b4f4998bcf7677ca5397a867e850f40232192073974\",\"dweb:/ipfs/QmUHsbVdp9SKmgek7ZfPcLTKrpZFXpqaqt4sVejzxGEQL3\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0x04102de0a79398e4bdea57b7a4818655b4cc66d6f81d1cff08bf428cd0b384cd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://53edc6c8f7f67cafc0129f039637c77d979880f7f1947defea31e8f0c05095bc\",\"dweb:/ipfs/QmUKXJd1vFCkxxrkXNLURdXrx2apoyWQFrFb5UqNkjdHVi\"]},\"lib/forge-std/src/StdStyle.sol\":{\"keccak256\":\"0x43e2a8a9b9c2574dabe74f11adf6f782df218f463540e3b5b563609fe108597d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://51363ca97404cf4128e1141428949768c31929e75e014b02c85e887fbbb4f1b8\",\"dweb:/ipfs/QmVhtbQc2fU4rRmbcfBtz34mAgG4BAZBsbna1Ca4SkoPsK\"]},\"lib/forge-std/src/StdToml.sol\":{\"keccak256\":\"0x58a72c765ed3f7ff6b105509689658795b8a3739b8931772a497155878381861\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b4a3746f4fabaeb980bd77d9e091d3904ee38a6c0e191bfa8ba6874c6f8558a3\",\"dweb:/ipfs/QmUfFDMEn461FgGEXt5HicyGD54sc28sLaQ9JRWDMBKed8\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0xb2469a902a326074034c4f7081d868113db0edbb7cf48b86528af2d6b07295f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1430a81c4978be875e2a3b31a8bfa4e1438fecd327f23771b690d64db63c020a\",\"dweb:/ipfs/QmW6aB2u1LNaRgGQFwjV7L7UbxsRg63iJ7AuujPouEa4cT\"]},\"lib/forge-std/src/Test.sol\":{\"keccak256\":\"0x3dda6083a83dfa3e8526e97bcc28e862ee2442dd58fe94d5c426d65b8e38f73c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33f8c02e4dabdab86a6825125856446a8657eacd712318b51b7818e4a6f6e3f4\",\"dweb:/ipfs/QmRKSjVnrk54yr8wTK2e6QxRjiuba2H8HJSKunHAkdo7RG\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x6f235e293b4406784ff3bd89b2e4d51d0922918cf6825e7a7a09413606932e39\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://afc4fceb24a18596a239e82eb354c41d9a4e28d3fc56fcce04146af2c692b1b9\",\"dweb:/ipfs/QmQCHSAb5k9KQW9kEzeoPdirSknkWso4q4t5CSVFLNnMLB\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x4bbf47eb762cef93729d6ef15e78789957147039b113e5d4df48e3d3fd16d0f5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af9e3a7c3d82fb5b10b57ca4d1a82f2acbef80c077f6f6ef0cc0187c7bfd9f57\",\"dweb:/ipfs/QmR9VzmnBDJpgiDP6CHT6truehukF9HpYvuP6kRiJbDwPP\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0x3b8fe79f48f065a4e4d35362171304a33784c3a90febae5f2787805a438de12f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://61de63af08803549299e68b6e6e88d40f3c5afac450e4ee0a228c66a61ba003d\",\"dweb:/ipfs/QmWVoQ5rrVxnczD4ZZoPbD4PC9Z3uExJtzjD4awTqd14MZ\"]},\"lib/forge-std/src/interfaces/IMulticall3.sol\":{\"keccak256\":\"0x7aac1389150499a922d1f9ef5749c908cef127cb2075b92fa17e9cb611263d0a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d95ebb7c7c463e08ebc12dab639945752fb2480acfc6e86da32f72732a7fd0c0\",\"dweb:/ipfs/QmNXK8P8oPWwajsQHvAHw3JPyQidPLCGQN3hWu1Lk6PBL2\"]},\"lib/forge-std/src/safeconsole.sol\":{\"keccak256\":\"0xbef9786cb49d3eade757bad87568c49c8c8f35721f0193c95ffb055d9e466e11\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3bafd2b0b2d28068d329f95ea8a1fbce3719c257fcb863fc01abcbafd8d531ab\",\"dweb:/ipfs/QmUeaFjKWTVDBsHVfSob4mwt6A5hTnKDz22HaUXeZhypa3\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1363.sol\":{\"keccak256\":\"0xd5ea07362ab630a6a3dee4285a74cf2377044ca2e4be472755ad64d7c5d4b69d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://da5e832b40fc5c3145d3781e2e5fa60ac2052c9d08af7e300dc8ab80c4343100\",\"dweb:/ipfs/QmTzf7N5ZUdh5raqtzbM11yexiUoLC9z3Ws632MCuycq1d\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC165.sol\":{\"keccak256\":\"0x0afcb7e740d1537b252cb2676f600465ce6938398569f09ba1b9ca240dde2dfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1c299900ac4ec268d4570ecef0d697a3013cd11a6eb74e295ee3fbc945056037\",\"dweb:/ipfs/Qmab9owJoxcA7vJT5XNayCMaUR1qxqj1NDzzisduwaJMcZ\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC20.sol\":{\"keccak256\":\"0x1a6221315ce0307746c2c4827c125d821ee796c74a676787762f4778671d4f44\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1bb2332a7ee26dd0b0de9b7fe266749f54820c99ab6a3bcb6f7e6b751d47ee2d\",\"dweb:/ipfs/QmcRWpaBeCYkhy68PR3B4AgD7asuQk7PwkWxrvJbZcikLF\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC6093.sol\":{\"keccak256\":\"0x19fdfb0f3b89a230e7dbd1cf416f1a6b531a3ee5db4da483f946320fc74afc0e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3490d794728f5bfecb46820431adaff71ba374141545ec20b650bb60353fac23\",\"dweb:/ipfs/QmPsfxjVpMcZbpE7BH93DzTpEaktESigEw4SmDzkXuJ4WR\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0x86b7b71a6aedefdad89b607378eeab1dcc5389b9ea7d17346d08af01d7190994\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1dc2db8d94a21eac8efe03adf574c419b08536409b416057a2b5b95cb772c43c\",\"dweb:/ipfs/QmZfqJCKVU1ScuX2A7s8WZdQEaikwJbDH5JBrBdKTUT4Gu\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x74ed01eb66b923d0d0cfe3be84604ac04b76482a55f9dd655e1ef4d367f95bc2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5282825a626cfe924e504274b864a652b0023591fa66f06a067b25b51ba9b303\",\"dweb:/ipfs/QmeCfPykghhMc81VJTrHTC7sF6CRvaA1FXVq2pJhwYp1dV\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0xd6fa4088198f04eef10c5bce8a2f4d60554b7ec4b987f684393c01bf79b94d9f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f95ee0bbd4dd3ac730d066ba3e785ded4565e890dbec2fa7d3b9fe3bad9d0d6e\",\"dweb:/ipfs/QmSLr6bHkPFWT7ntj34jmwfyskpwo97T9jZUrk5sz3sdtR\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x982c5cb790ab941d1e04f807120a71709d4c313ba0bfc16006447ffbd27fbbd5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8150ceb4ac947e8a442b2a9c017e01e880b2be2dd958f1fa9bc405f4c5a86508\",\"dweb:/ipfs/QmbcBmFX66AY6Kbhnd5gx7zpkgqnUafo43XnmayAM7zVdB\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12\",\"dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF\"]},\"lib/openzeppelin-contracts/contracts/utils/ReentrancyGuard.sol\":{\"keccak256\":\"0x11a5a79827df29e915a12740caf62fe21ebe27c08c9ae3e09abe9ee3ba3866d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3cf0c69ab827e3251db9ee6a50647d62c90ba580a4d7bbff21f2bea39e7b2f4a\",\"dweb:/ipfs/QmZiKwtKU1SBX4RGfQtY7PZfiapbbu6SZ9vizGQD9UHjRA\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x8891738ffe910f0cf2da09566928589bf5d63f4524dd734fd9cedbac3274dd5c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://971f954442df5c2ef5b5ebf1eb245d7105d9fbacc7386ee5c796df1d45b21617\",\"dweb:/ipfs/QmadRjHbkicwqwwh61raUEapaVEtaLMcYbQZWs9gUkgj3u\"]},\"tests/contracts/FlashLoanReceiverSecure.t.sol\":{\"keccak256\":\"0xd9bb38298f04ca25e88e6773d0356d558c3298f02bff1152d2aed576911537c5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://db84b7d1597c5ebf0b3ac5ff171267cabca670008c0db99f3c04491002d2330c\",\"dweb:/ipfs/QmZgaz5hrAveno14n8QqTRb6MDcY8dbrUfYAP2Yhyxk9GF\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.30+commit.73712a01"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"address[]","name":"tokens","type":"address[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"},{"internalType":"bytes","name":"userData","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"flashLoan"}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/=lib/openzeppelin-contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","halmos-cheatcodes/=lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/","openzeppelin-contracts/=lib/openzeppelin-contracts/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"tests/contracts/FlashLoanReceiverSecure.t.sol":"MockBalancerVault"},"evmVersion":"cancun","libraries":{}},"sources":{"contracts/balancer/FlashLoanReceiverSecure.sol":{"keccak256":"0x0fce6a56d36f528232b049416a54e922e5b6875d8772001ea42101a0313a7a73","urls":["bzz-raw://431552cc7357e6246f15a3e00dd161e0f985175002dbd59300b061188e425d1c","dweb:/ipfs/QmQUe2GK85PmeR6A2bTa6edET1HW276KfEJFt8Um1Z577d"],"license":"MIT"},"lib/forge-std/src/Base.sol":{"keccak256":"0x4b2a5a85e045dcf6a082700c7252e43854c2eed88f860aaa18ec1e85218ae2bf","urls":["bzz-raw://98d060ed5be569a92d908fc358149039dc8f833d61973aa1b9d1d8235676bf6d","dweb:/ipfs/QmaWQpn5dJmbMS5skwmPPMeUWZG35BLkignPpcA3zyagEs"],"license":"MIT"},"lib/forge-std/src/StdAssertions.sol":{"keccak256":"0xd8eec16034b53b52c90a3d720e121ce7d30d64cc57d854db7d817d5b382dda43","urls":["bzz-raw://612780755e32668c7e3b747d94d16c7291101144e084dd9ee563f071711e99e3","dweb:/ipfs/QmQgtFJXEmDtSHT7tZQTMbb6PCDpq5UDYFvrBnWk1Xo2SY"],"license":"MIT"},"lib/forge-std/src/StdChains.sol":{"keccak256":"0xae394f477769a38276d98d4854bc865fc8d281edbd4e72167507adb8236812aa","urls":["bzz-raw://34a0e609a4ec617b5c349f5e89a3352810cc5e4d3adaf939b32a27e4a5e46de2","dweb:/ipfs/QmPfjimWAGGb6rzDjNMtLeZ93JJbCJJMov5gaNKyTy1doe"],"license":"MIT"},"lib/forge-std/src/StdCheats.sol":{"keccak256":"0x0fa6ec03602648b62cce41aab2096e6b7e052f2846075d967b6958dd586db746","urls":["bzz-raw://cd84e2ca9c1eaed6b76768cc12bb8c1af8289170ea8b7706f58d516460d79c41","dweb:/ipfs/QmQ7BK7co6DE4eWUqMyv11s5eHYkS1tyx8tDSZGZVtf2aK"],"license":"MIT"},"lib/forge-std/src/StdConstants.sol":{"keccak256":"0x319ccdabfa2c0b2428301445873270ffea20f0e039d4fd5e6eeba65158e4e534","urls":["bzz-raw://b633f9d3a719e1d035ce7daa6cc051ddf89a72d34200d14cec37728e245cdabc","dweb:/ipfs/QmRP7HQJpHMx1CsFrY8tXVVx1DQmi2dcb2BoGfiWaA923r"],"license":"MIT"},"lib/forge-std/src/StdError.sol":{"keccak256":"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77","urls":["bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6","dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj"],"license":"MIT"},"lib/forge-std/src/StdInvariant.sol":{"keccak256":"0x4dab3021edfa9511bbdd80c48f060ef62eaf457f99eaf841f561fc2557d9a08d","urls":["bzz-raw://07668628673174cf8f27f8f4e1f862bab775013ec247eb34f698c5005f229391","dweb:/ipfs/QmPJsiiYwmCZXMsHmQv5tg8VF3CAhNdat7WnKLTWZZH2v5"],"license":"MIT"},"lib/forge-std/src/StdJson.sol":{"keccak256":"0xbc0132abe1c2accc2867c0f03667afffdf92f3e95a581bb03c9557eaa38ea500","urls":["bzz-raw://eb6fab37dc73c219cfbb7b4f4998bcf7677ca5397a867e850f40232192073974","dweb:/ipfs/QmUHsbVdp9SKmgek7ZfPcLTKrpZFXpqaqt4sVejzxGEQL3"],"license":"MIT"},"lib/forge-std/src/StdMath.sol":{"keccak256":"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2","urls":["bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92","dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC"],"license":"MIT"},"lib/forge-std/src/StdStorage.sol":{"keccak256":"0x04102de0a79398e4bdea57b7a4818655b4cc66d6f81d1cff08bf428cd0b384cd","urls":["bzz-raw://53edc6c8f7f67cafc0129f039637c77d979880f7f1947defea31e8f0c05095bc","dweb:/ipfs/QmUKXJd1vFCkxxrkXNLURdXrx2apoyWQFrFb5UqNkjdHVi"],"license":"MIT"},"lib/forge-std/src/StdStyle.sol":{"keccak256":"0x43e2a8a9b9c2574dabe74f11adf6f782df218f463540e3b5b563609fe108597d","urls":["bzz-raw://51363ca97404cf4128e1141428949768c31929e75e014b02c85e887fbbb4f1b8","dweb:/ipfs/QmVhtbQc2fU4rRmbcfBtz34mAgG4BAZBsbna1Ca4SkoPsK"],"license":"MIT"},"lib/forge-std/src/StdToml.sol":{"keccak256":"0x58a72c765ed3f7ff6b105509689658795b8a3739b8931772a497155878381861","urls":["bzz-raw://b4a3746f4fabaeb980bd77d9e091d3904ee38a6c0e191bfa8ba6874c6f8558a3","dweb:/ipfs/QmUfFDMEn461FgGEXt5HicyGD54sc28sLaQ9JRWDMBKed8"],"license":"MIT"},"lib/forge-std/src/StdUtils.sol":{"keccak256":"0xb2469a902a326074034c4f7081d868113db0edbb7cf48b86528af2d6b07295f8","urls":["bzz-raw://1430a81c4978be875e2a3b31a8bfa4e1438fecd327f23771b690d64db63c020a","dweb:/ipfs/QmW6aB2u1LNaRgGQFwjV7L7UbxsRg63iJ7AuujPouEa4cT"],"license":"MIT"},"lib/forge-std/src/Test.sol":{"keccak256":"0x3dda6083a83dfa3e8526e97bcc28e862ee2442dd58fe94d5c426d65b8e38f73c","urls":["bzz-raw://33f8c02e4dabdab86a6825125856446a8657eacd712318b51b7818e4a6f6e3f4","dweb:/ipfs/QmRKSjVnrk54yr8wTK2e6QxRjiuba2H8HJSKunHAkdo7RG"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x6f235e293b4406784ff3bd89b2e4d51d0922918cf6825e7a7a09413606932e39","urls":["bzz-raw://afc4fceb24a18596a239e82eb354c41d9a4e28d3fc56fcce04146af2c692b1b9","dweb:/ipfs/QmQCHSAb5k9KQW9kEzeoPdirSknkWso4q4t5CSVFLNnMLB"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x4bbf47eb762cef93729d6ef15e78789957147039b113e5d4df48e3d3fd16d0f5","urls":["bzz-raw://af9e3a7c3d82fb5b10b57ca4d1a82f2acbef80c077f6f6ef0cc0187c7bfd9f57","dweb:/ipfs/QmR9VzmnBDJpgiDP6CHT6truehukF9HpYvuP6kRiJbDwPP"],"license":"MIT"},"lib/forge-std/src/console2.sol":{"keccak256":"0x3b8fe79f48f065a4e4d35362171304a33784c3a90febae5f2787805a438de12f","urls":["bzz-raw://61de63af08803549299e68b6e6e88d40f3c5afac450e4ee0a228c66a61ba003d","dweb:/ipfs/QmWVoQ5rrVxnczD4ZZoPbD4PC9Z3uExJtzjD4awTqd14MZ"],"license":"MIT"},"lib/forge-std/src/interfaces/IMulticall3.sol":{"keccak256":"0x7aac1389150499a922d1f9ef5749c908cef127cb2075b92fa17e9cb611263d0a","urls":["bzz-raw://d95ebb7c7c463e08ebc12dab639945752fb2480acfc6e86da32f72732a7fd0c0","dweb:/ipfs/QmNXK8P8oPWwajsQHvAHw3JPyQidPLCGQN3hWu1Lk6PBL2"],"license":"MIT"},"lib/forge-std/src/safeconsole.sol":{"keccak256":"0xbef9786cb49d3eade757bad87568c49c8c8f35721f0193c95ffb055d9e466e11","urls":["bzz-raw://3bafd2b0b2d28068d329f95ea8a1fbce3719c257fcb863fc01abcbafd8d531ab","dweb:/ipfs/QmUeaFjKWTVDBsHVfSob4mwt6A5hTnKDz22HaUXeZhypa3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1363.sol":{"keccak256":"0xd5ea07362ab630a6a3dee4285a74cf2377044ca2e4be472755ad64d7c5d4b69d","urls":["bzz-raw://da5e832b40fc5c3145d3781e2e5fa60ac2052c9d08af7e300dc8ab80c4343100","dweb:/ipfs/QmTzf7N5ZUdh5raqtzbM11yexiUoLC9z3Ws632MCuycq1d"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC165.sol":{"keccak256":"0x0afcb7e740d1537b252cb2676f600465ce6938398569f09ba1b9ca240dde2dfc","urls":["bzz-raw://1c299900ac4ec268d4570ecef0d697a3013cd11a6eb74e295ee3fbc945056037","dweb:/ipfs/Qmab9owJoxcA7vJT5XNayCMaUR1qxqj1NDzzisduwaJMcZ"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC20.sol":{"keccak256":"0x1a6221315ce0307746c2c4827c125d821ee796c74a676787762f4778671d4f44","urls":["bzz-raw://1bb2332a7ee26dd0b0de9b7fe266749f54820c99ab6a3bcb6f7e6b751d47ee2d","dweb:/ipfs/QmcRWpaBeCYkhy68PR3B4AgD7asuQk7PwkWxrvJbZcikLF"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC6093.sol":{"keccak256":"0x19fdfb0f3b89a230e7dbd1cf416f1a6b531a3ee5db4da483f946320fc74afc0e","urls":["bzz-raw://3490d794728f5bfecb46820431adaff71ba374141545ec20b650bb60353fac23","dweb:/ipfs/QmPsfxjVpMcZbpE7BH93DzTpEaktESigEw4SmDzkXuJ4WR"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0x86b7b71a6aedefdad89b607378eeab1dcc5389b9ea7d17346d08af01d7190994","urls":["bzz-raw://1dc2db8d94a21eac8efe03adf574c419b08536409b416057a2b5b95cb772c43c","dweb:/ipfs/QmZfqJCKVU1ScuX2A7s8WZdQEaikwJbDH5JBrBdKTUT4Gu"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x74ed01eb66b923d0d0cfe3be84604ac04b76482a55f9dd655e1ef4d367f95bc2","urls":["bzz-raw://5282825a626cfe924e504274b864a652b0023591fa66f06a067b25b51ba9b303","dweb:/ipfs/QmeCfPykghhMc81VJTrHTC7sF6CRvaA1FXVq2pJhwYp1dV"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0xd6fa4088198f04eef10c5bce8a2f4d60554b7ec4b987f684393c01bf79b94d9f","urls":["bzz-raw://f95ee0bbd4dd3ac730d066ba3e785ded4565e890dbec2fa7d3b9fe3bad9d0d6e","dweb:/ipfs/QmSLr6bHkPFWT7ntj34jmwfyskpwo97T9jZUrk5sz3sdtR"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x982c5cb790ab941d1e04f807120a71709d4c313ba0bfc16006447ffbd27fbbd5","urls":["bzz-raw://8150ceb4ac947e8a442b2a9c017e01e880b2be2dd958f1fa9bc405f4c5a86508","dweb:/ipfs/QmbcBmFX66AY6Kbhnd5gx7zpkgqnUafo43XnmayAM7zVdB"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2","urls":["bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12","dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/ReentrancyGuard.sol":{"keccak256":"0x11a5a79827df29e915a12740caf62fe21ebe27c08c9ae3e09abe9ee3ba3866d3","urls":["bzz-raw://3cf0c69ab827e3251db9ee6a50647d62c90ba580a4d7bbff21f2bea39e7b2f4a","dweb:/ipfs/QmZiKwtKU1SBX4RGfQtY7PZfiapbbu6SZ9vizGQD9UHjRA"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x8891738ffe910f0cf2da09566928589bf5d63f4524dd734fd9cedbac3274dd5c","urls":["bzz-raw://971f954442df5c2ef5b5ebf1eb245d7105d9fbacc7386ee5c796df1d45b21617","dweb:/ipfs/QmadRjHbkicwqwwh61raUEapaVEtaLMcYbQZWs9gUkgj3u"],"license":"MIT"},"tests/contracts/FlashLoanReceiverSecure.t.sol":{"keccak256":"0xd9bb38298f04ca25e88e6773d0356d558c3298f02bff1152d2aed576911537c5","urls":["bzz-raw://db84b7d1597c5ebf0b3ac5ff171267cabca670008c0db99f3c04491002d2330c","dweb:/ipfs/QmZgaz5hrAveno14n8QqTRb6MDcY8dbrUfYAP2Yhyxk9GF"],"license":"MIT"}},"version":1},"id":31}