@pimlico/alto 0.0.0-main.20250606T161836 → 0.0.0-main.20250611T105955

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. package/contracts/EIP712.sol/EIP712.json +1 -1
  2. package/contracts/ERC165.sol/ERC165.json +1 -1
  3. package/contracts/Eip7702Support.sol/Eip7702Support.json +1 -1
  4. package/contracts/EntryPoint.sol/EntryPoint.json +1 -1
  5. package/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride06.json +1 -0
  6. package/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride07.json +1 -0
  7. package/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride08.json +1 -0
  8. package/contracts/EntryPointGasEstimationOverride.sol/EntryPointGasEstimationOverride06.json +1 -0
  9. package/contracts/EntryPointSimulations.sol/EntryPointSimulations07.json +1 -0
  10. package/contracts/EntryPointSimulations.sol/{EntryPointSimulations.json → EntryPointSimulations08.json} +1 -1
  11. package/contracts/Exec.sol/Exec.json +1 -1
  12. package/contracts/IAccount.sol/IAccount.json +1 -1
  13. package/contracts/IAccountExecute.sol/IAccountExecute.json +1 -1
  14. package/contracts/IAggregator.sol/IAggregator.json +1 -1
  15. package/contracts/IERC165.sol/IERC165.json +1 -1
  16. package/contracts/IERC5267.sol/IERC5267.json +1 -1
  17. package/contracts/IEntryPoint.sol/IEntryPoint.json +1 -1
  18. package/contracts/IEntryPointSimulations.sol/IEntryPointSimulations.json +1 -1
  19. package/contracts/INonceManager.sol/INonceManager.json +1 -1
  20. package/contracts/IPaymaster.sol/IPaymaster.json +1 -1
  21. package/contracts/ISenderCreator.sol/ISenderCreator.json +1 -1
  22. package/contracts/IStakeManager.sol/IStakeManager.json +1 -1
  23. package/contracts/LibBytes.sol/LibBytes.json +1 -0
  24. package/contracts/Math.sol/Math.json +1 -1
  25. package/contracts/MessageHashUtils.sol/MessageHashUtils.json +1 -1
  26. package/contracts/NonceManager.sol/NonceManager.json +1 -1
  27. package/contracts/Panic.sol/Panic.json +1 -1
  28. package/contracts/PimlicoSimulations.sol/PimlicoSimulations.json +1 -0
  29. package/contracts/ReentrancyGuard.sol/ReentrancyGuard.json +1 -1
  30. package/contracts/ReentrancyGuardTransient.sol/ReentrancyGuardTransient.json +1 -1
  31. package/contracts/SafeCast.sol/SafeCast.json +1 -1
  32. package/contracts/SenderCreator.sol/SenderCreator.json +1 -1
  33. package/contracts/ShortStrings.sol/ShortStrings.json +1 -1
  34. package/contracts/SignedMath.sol/SignedMath.json +1 -1
  35. package/contracts/StakeManager.sol/StakeManager.json +1 -1
  36. package/contracts/StorageSlot.sol/StorageSlot.json +1 -1
  37. package/contracts/Strings.sol/Strings.json +1 -1
  38. package/contracts/TransientSlot.sol/TransientSlot.json +1 -1
  39. package/contracts/UserOperation.sol/UserOperationLib.json +1 -1
  40. package/contracts/UserOperationLib.sol/UserOperationLib.json +1 -1
  41. package/contracts/build-info/4a223f6420e18feb.json +1 -0
  42. package/contracts/build-info/ad2dc60de86c0e4f.json +1 -0
  43. package/contracts/contracts/interfaces/IAggregator.sol/IAggregator.json +1 -0
  44. package/contracts/contracts/interfaces/IEntryPoint.sol/IEntryPoint.json +1 -0
  45. package/contracts/contracts/interfaces/INonceManager.sol/INonceManager.json +1 -0
  46. package/contracts/contracts/interfaces/IStakeManager.sol/IStakeManager.json +1 -0
  47. package/contracts/interfaces/IAggregator.sol/IAggregator.json +1 -0
  48. package/contracts/interfaces/IEntryPoint.sol/IEntryPoint.json +1 -1
  49. package/contracts/interfaces/INonceManager.sol/INonceManager.json +1 -0
  50. package/contracts/interfaces/IStakeManager.sol/IStakeManager.json +1 -0
  51. package/esm/cli/config/bundler.d.ts +434 -416
  52. package/esm/cli/config/bundler.js +11 -2
  53. package/esm/cli/config/bundler.js.map +1 -1
  54. package/esm/cli/config/options.js +21 -4
  55. package/esm/cli/config/options.js.map +1 -1
  56. package/esm/cli/deploySimulationsContract.d.ts +2 -0
  57. package/esm/cli/deploySimulationsContract.js +56 -25
  58. package/esm/cli/deploySimulationsContract.js.map +1 -1
  59. package/esm/cli/handler.js +18 -6
  60. package/esm/cli/handler.js.map +1 -1
  61. package/esm/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride06.json +1 -0
  62. package/esm/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride07.json +1 -0
  63. package/esm/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride08.json +1 -0
  64. package/esm/contracts/EntryPointGasEstimationOverride.sol/EntryPointGasEstimationOverride06.json +1 -0
  65. package/esm/contracts/EntryPointSimulations.sol/EntryPointSimulations07.json +1 -0
  66. package/esm/contracts/EntryPointSimulations.sol/EntryPointSimulations08.json +1 -0
  67. package/esm/contracts/PimlicoSimulations.sol/PimlicoSimulations.json +1 -0
  68. package/esm/createConfig.d.ts +2 -1
  69. package/esm/createConfig.js +2 -0
  70. package/esm/createConfig.js.map +1 -1
  71. package/esm/executor/executor.d.ts +10 -4
  72. package/esm/executor/executor.js +109 -55
  73. package/esm/executor/executor.js.map +1 -1
  74. package/esm/executor/executorManager.d.ts +8 -1
  75. package/esm/executor/executorManager.js +75 -76
  76. package/esm/executor/executorManager.js.map +1 -1
  77. package/esm/executor/filterOpsAndEstimateGas.d.ts +25 -0
  78. package/esm/executor/filterOpsAndEstimateGas.js +251 -0
  79. package/esm/executor/filterOpsAndEstimateGas.js.map +1 -0
  80. package/esm/executor/utils.js +1 -1
  81. package/esm/executor/utils.js.map +1 -1
  82. package/esm/mempool/mempool.js +15 -4
  83. package/esm/mempool/mempool.js.map +1 -1
  84. package/esm/rpc/estimation/gasEstimationsV06.js +12 -4
  85. package/esm/rpc/estimation/gasEstimationsV06.js.map +1 -1
  86. package/esm/rpc/estimation/gasEstimationsV07.d.ts +1 -1
  87. package/esm/rpc/estimation/gasEstimationsV07.js +25 -22
  88. package/esm/rpc/estimation/gasEstimationsV07.js.map +1 -1
  89. package/esm/rpc/methods/pimlico_sendUserOperationNow.js +14 -4
  90. package/esm/rpc/methods/pimlico_sendUserOperationNow.js.map +1 -1
  91. package/esm/rpc/validation/SafeValidator.js +17 -9
  92. package/esm/rpc/validation/SafeValidator.js.map +1 -1
  93. package/esm/types/contracts/EntryPointSimulationsV6.d.ts +0 -1
  94. package/esm/types/contracts/EntryPointSimulationsV6.js +0 -2
  95. package/esm/types/contracts/EntryPointSimulationsV6.js.map +1 -1
  96. package/esm/types/contracts/PimlicoSimulations.d.ts +284 -0
  97. package/esm/types/contracts/PimlicoSimulations.js +368 -0
  98. package/esm/types/contracts/PimlicoSimulations.js.map +1 -0
  99. package/esm/types/contracts/index.d.ts +1 -1
  100. package/esm/types/contracts/index.js +1 -1
  101. package/esm/types/contracts/index.js.map +1 -1
  102. package/esm/types/mempool.d.ts +11 -7
  103. package/esm/types/mempool.js.map +1 -1
  104. package/esm/utils/eip7702.d.ts +1 -1
  105. package/esm/utils/eip7702.js +3 -0
  106. package/esm/utils/eip7702.js.map +1 -1
  107. package/esm/utils/entryPointOverrides.d.ts +16 -0
  108. package/esm/utils/entryPointOverrides.js +64 -0
  109. package/esm/utils/entryPointOverrides.js.map +1 -0
  110. package/esm/utils/helpers.d.ts +1 -0
  111. package/esm/utils/helpers.js +4 -0
  112. package/esm/utils/helpers.js.map +1 -1
  113. package/esm/utils/validation.d.ts +5 -0
  114. package/esm/utils/validation.js +17 -7
  115. package/esm/utils/validation.js.map +1 -1
  116. package/package.json +2 -2
  117. package/contracts/EntryPointCodeOverride.sol/EntryPointCodeOverride.json +0 -1
  118. package/contracts/PimlicoEntryPointSimulationsV7.sol/PimlicoEntryPointSimulationsV7.json +0 -1
  119. package/contracts/PimlicoEntryPointSimulationsV8.sol/PimlicoEntryPointSimulationsV8.json +0 -1
  120. package/contracts/build-info/96c79d1c9e9e095f.json +0 -1
  121. package/contracts/build-info/b400ff92e5db9cf3.json +0 -1
  122. package/esm/contracts/PimlicoEntryPointSimulationsV7.sol/PimlicoEntryPointSimulationsV7.json +0 -1
  123. package/esm/contracts/PimlicoEntryPointSimulationsV8.sol/PimlicoEntryPointSimulationsV8.json +0 -1
  124. package/esm/executor/filterOpsAndEStimateGas.d.ts +0 -29
  125. package/esm/executor/filterOpsAndEStimateGas.js +0 -198
  126. package/esm/executor/filterOpsAndEStimateGas.js.map +0 -1
  127. package/esm/types/contracts/PimlicoEntryPointSimulations.d.ts +0 -25
  128. package/esm/types/contracts/PimlicoEntryPointSimulations.js +0 -39
  129. package/esm/types/contracts/PimlicoEntryPointSimulations.js.map +0 -1
@@ -1 +0,0 @@
1
- {"abi":[{"type":"constructor","inputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"simulateEntryPoint","inputs":[{"name":"ep","type":"address","internalType":"address payable"},{"name":"data","type":"bytes[]","internalType":"bytes[]"}],"outputs":[{"name":"","type":"bytes[]","internalType":"bytes[]"}],"stateMutability":"nonpayable"},{"type":"event","name":"PimlicoSimulationV7Deployed","inputs":[],"anonymous":false}],"bytecode":{"object":"0x6080806040523460a757614e6e8181016001600160401b038111838210176091578291610458833903906000f08015608557600080546001600160a01b0319166001600160a01b0392909216919091178155604051907fdbcc4f7de25a77d8f29bb7bf3bdd025113f28c19a292a93e6fb38bb2d0a0d12a9080a16103ab90816100ad8239f35b6040513d6000823e3d90fd5b634e487b7160e01b600052604160045260246000fd5b600080fdfe6080604052600436101561001257600080fd5b60003560e01c63c18f52261461002757600080fd5b346102b55760403660031901126102b55760043573ffffffffffffffffffffffffffffffffffffffff81168091036102b55760243567ffffffffffffffff81116102b557366023820112156102b5578060040135610084816102f2565b9161009260405193846102d0565b8183526024602084019260051b820101903682116102b55760248101925b82841061023d57845185876100c4836102f2565b926100d260405194856102d0565b8084526100e1601f19916102f2565b0160005b81811061022c57505060005b82518110156101c457600190606060008061016f73ffffffffffffffffffffffffffffffffffffffff82541661017d61012a878b61034b565b5160405193849160208301947f850aaf62000000000000000000000000000000000000000000000000000000008652602484015260406044840152606483019061030a565b03601f1981018452836102d0565b82885a935193f1156101a6575b610194828761034b565b5261019f818661034b565b50016100f1565b503d604051906020818301016040528082526000602083013e61018a565b836040518091602082016020835281518091526040830190602060408260051b8601019301916000905b8282106101fd57505050500390f35b9193600191939550602061021c8192603f198a8203018652885161030a565b96019201920185949391926101ee565b8060606020809388010152016100e5565b833567ffffffffffffffff81116102b5578201366043820112156102b55760248101359167ffffffffffffffff83116102ba57604051610287601f8501601f1916602001826102d0565b83815236604484860101116102b55760006020858196604483970183860137830101528152019301926100b0565b600080fd5b634e487b7160e01b600052604160045260246000fd5b90601f8019910116810190811067ffffffffffffffff8211176102ba57604052565b67ffffffffffffffff81116102ba5760051b60200190565b919082519283825260005b848110610336575050826000602080949584010152601f8019910116010190565b80602080928401015182828601015201610315565b805182101561035f5760209160051b010190565b634e487b7160e01b600052603260045260246000fdfea264697066735822122062975c4d47768efffe557c10cf10ecfd39a72d039f0f35a49aec99a5ff87f9bb64736f6c634300081c003360c080604052346101005760016002556101948181016001600160401b038111838210176100ea578291614cda833903906000f080156100de576080523060a052610048610105565b60008152602081019060008252806020610060610105565b600081520152600380546001600160a01b03191690555160045551600555604051614bb5908161012582396080518161411c015260a051818181612bf40152818161342c01528181613488015281816136720152818161372f0152818161378a0152818161389d0152818161395a015281816139b50152613ac80152f35b6040513d6000823e3d90fd5b634e487b7160e01b600052604160045260246000fd5b600080fd5b60408051919082016001600160401b038111838210176100ea5760405256fe60806040526004361015610023575b361561001957600080fd5b610021612cec565b005b60003560e01c80630396cb60146101c357806303d1dcaf146101be5780630bd28e3b146101b95780630da82661146101b45780630dbfc6bd146101af5780631b2e01b8146101aa578063205c2878146101a557806321e60b37146101a057806322cdde4c1461019b578063263934db1461019657806330ec25d11461019157806335567e1a1461018c57806344403473146101875780635287ce121461018257806370a082311461017d5780637472949c1461017857806376ad61231461017357806397b2dcb91461016e578063b760faf914610169578063bb9fe6bf14610164578063c23a5cea1461015f578063c3bce0091461015a578063c579f76b14610155578063f7e426e814610150578063fc7e286d1461014b5763fe2171cb0361000e57611926565b611898565b61185f565b6115cf565b611598565b611471565b61134a565b61131f565b611125565b6110ec565b6110cc565b61108e565b610f7d565b610f37565b610e65565b610de7565b610cd0565b610c9f565b610ba2565b610aaa565b610a49565b6109cb565b61081d565b610593565b6104f6565b60203660031901126103b95760043563ffffffff8116908181036103b9576103b47fa5ae833d0bb1dcd632d98a8b70973e8516812898e19bf27b70071ebc8dc52c019161039661028461027461022c336001600160a01b03166000526000602052604060002090565b96610238811515611976565b61026560018901549161025e6102558463ffffffff9060781c1690565b63ffffffff1690565b11156119c1565b60081c6001600160701b031690565b6001600160701b03349116611a3f565b94610290861515611a4c565b6102a36001600160701b03871115611a97565b546102ac61069d565b908152600160208201526001600160701b038616604082015263ffffffff83166060820152600060808201526102f5336001600160a01b03166000526000602052604060002090565b81518155602082015160019091018054604084015160608501516080909501517fffffffffffffff0000000000000000000000000000000000000000000000000090921660ff941515949094169390931760089390931b6effffffffffffffffffffffffffff00169290921760789390931b72ffffffff000000000000000000000000000000169290921760989190911b65ffffffffffff60981b16179055565b6040805194855263ffffffff90911660208501523393918291820190565b0390a2005b600080fd5b9181601f840112156103b95782359167ffffffffffffffff83116103b9576020808501948460051b0101116103b957565b6001600160a01b038116036103b957565b359061040b826103ef565b565b60c06003198201126103b95760043567ffffffffffffffff81116103b95781610438916004016103be565b929092916024359067ffffffffffffffff82116103b95760609082900360031901126103b9576004019060443561046e816103ef565b90606435906084359060a43590565b60005b8381106104905750506000910152565b8181015183820152602001610480565b906020916104b98151809281855285808601910161047d565b601f01601f1916010190565b608060406104f3936020845280516020850152602081015115158285015201519160608082015201906104a0565b90565b346103b95761057961056d61055661050d3661040d565b969194909561051d949394611ae2565b50610550610529611b03565b61053e6105368780611b73565b825190612d40565b6105488680611b73565b905a91612f9b565b50613276565b6105686105638280611b73565b61333b565b6133ce565b604051918291826104c5565b0390f35b602435906001600160c01b03821682036103b957565b346103b95760203660031901126103b9576004356001600160c01b03811681036103b9576105e1903360005260016020526040600020906001600160c01b0316600052602052604060002090565b6105eb8154611b89565b9055005b634e487b7160e01b600052604160045260246000fd5b60a0810190811067ffffffffffffffff82111761062157604052565b6105ef565b6060810190811067ffffffffffffffff82111761062157604052565b610140810190811067ffffffffffffffff82111761062157604052565b6040810190811067ffffffffffffffff82111761062157604052565b90601f8019910116810190811067ffffffffffffffff82111761062157604052565b6040519061040b60a08361067b565b6040519061040b6101408361067b565b6040519061040b6101008361067b565b6040519061040b60408361067b565b6040519061040b60608361067b565b6040519061040b6101208361067b565b67ffffffffffffffff811161062157601f01601f191660200190565b929192610722826106fa565b91610730604051938461067b565b8294818452818301116103b9578281602093846000960137010152565b9080601f830112156103b9578160206104f393359101610716565b60431901906101c082126103b95760405161078281610605565b6101408193126103b9576107946106ac565b61079e6044610400565b81526064356020820152608435604082015260a435606082015260c435608082015260e43560a08201526101043560c08201526107dc610124610400565b60e0820152610144356101008201526101643561012082015281526101843560208201526101a43560408201526101c435606082015260806101e435910152565b346103b9576102203660031901126103b95760043567ffffffffffffffff81116103b95761084f90369060040161074d565b3660231901906101c082126103b9576101406040519261086e84610605565b126103b95761087b6106ac565b6108856024610400565b815260443560208201526064356040820152608435606082015260a435608082015260c43560a082015260e43560c08201526108c2610104610400565b60e0820152610124356101008201526101443561012082015282526101643560208301526101843560408301526101a43560608301526101c43560808301526101e4359067ffffffffffffffff82116103b95760409261092961093493369060040161074d565b906102043592611b98565b82519182526020820152f35b60206003198201126103b9576004359067ffffffffffffffff82116103b95761096b916004016103be565b9091565b9061010060e06104f393805184526020810151602085015260408101516040850152606081015160608501526080810151608085015260a081015160a085015260c0810151151560c08501520151918160e082015201906104a0565b346103b9576109e26109dc36610940565b90611f05565b6040518091602082016020835281518091526040830190602060408260051b8601019301916000905b828210610a1a57505050500390f35b91936001919395506020610a398192603f198a8203018652885161096f565b9601920192018594939192610a0b565b346103b95760403660031901126103b9576020610aa1600435610a6b816103ef565b6001600160a01b03610a7b61057d565b9116600052600183526040600020906001600160c01b0316600052602052604060002090565b54604051908152f35b346103b95760403660031901126103b957600435610ac7816103ef565b602435336000526000602052604060002091825490818311610b4f5760008080856001600160a01b03829589610b00846100219a6120af565b9055604080516001600160a01b03831681526020810185905233917fd1c19fbcd4551a5edfb66d43d2e337c04837afda3482b42bdf569a8fccdae5fb91a2165af1610b496120bc565b506120ec565b606460405162461bcd60e51b815260206004820152601960248201527f576974686472617720616d6f756e7420746f6f206c61726765000000000000006044820152fd5b90816101209103126103b95790565b346103b9576102003660031901126103b95760243560043567ffffffffffffffff82116103b957610bda610579923690600401610b93565b90610be436610768565b600092815192610bf48483612d40565b610bfd82612137565b60208401526001600160a01b0360e0610c3786610100604082015160608301510160808301510160a08301510160c0830151019101510290565b95015116610c5f575b6040805160008082526020820188905291810191909152806060810188565b610c699450613c92565b905038808080610c40565b60206003198201126103b9576004359067ffffffffffffffff82116103b9576104f391600401610b93565b346103b9576020610cb7610cb236610c74565b612137565b604051908152f35b9060206104f392818152019061096f565b346103b957610cfc610ce136610940565b809291610cec611e05565b50610cf682611e5a565b50611f05565b6000198201918211610d2a5761057991610d1591611ef1565b5160405191829160208352602083019061096f565b611a0c565b906104f39060e06080610d81818651610140865280516101408701526020810151610160870152604081015161018087015260608101516101a0870152015160a06101c08601526101e08501906104a0565b60208087015180518683015201516040850152946040810151805160608601526020015160808501526060810151805160a08601526020015160c0850152015191019080516001600160a01b031682526020908101518051828401520151604090910152565b346103b957610dfe610df836610940565b906122c8565b6040518091602082016020835281518091526040830190602060408260051b8601019301916000905b828210610e3657505050500390f35b91936001919395506020610e558192603f198a82030186528851610d2f565b9601920192018594939192610e27565b346103b95760403660031901126103b9576020600435610e84816103ef565b6001600160a01b03610e9461057d565b911660005260018252610ebe816040600020906001600160c01b0316600052602052604060002090565b546040805192901b67ffffffffffffffff1916178152f35b60606003198201126103b957600435610eee816103ef565b9160243567ffffffffffffffff81116103b957826023820112156103b95780600401359267ffffffffffffffff84116103b957602484830101116103b957602401919060443590565b346103b95760008080610f4936610ed6565b939181604094929451948592833781018381520393f1610f676120bc565b9015610f6f57005b80519081156103b957602001fd5b346103b95760203660031901126103b9576001600160a01b03600435610fa2816103ef565b60006080604051610fb281610605565b8281528260208201528260408201528260608201520152166000526000602052610579604060002061103a65ffffffffffff600160405193610ff385610605565b80548552015460ff8116151560208501526001600160701b038160081c16604085015263ffffffff8160781c16606085015260981c16608083019065ffffffffffff169052565b60405191829182919091608065ffffffffffff8160a0840195805185526020810151151560208601526001600160701b03604082015116604086015263ffffffff6060820151166060860152015116910152565b346103b95760203660031901126103b9576001600160a01b036004356110b3816103ef565b1660005260006020526020604060002054604051908152f35b346103b95761057961056d6110e03661040d565b959490949391936123b5565b346103b95761057961056d6111136111033661040d565b9691949095610550949394611ae2565b6111206105638280611b73565b6136ef565b346103b95760603660031901126103b95760043567ffffffffffffffff81116103b957611156903690600401610b93565b602435611162816103ef565b60443567ffffffffffffffff81116103b95761118290369060040161074d565b9161118b611e05565b5060009160028054146113105761057993600280556111a8611b03565b6111b18461333b565b6111bb81856128b6565b91955a6060850151856111d16060850185612618565b8c60038211611308575b7fffffffff0000000000000000000000000000000000000000000000000000000016638dd7712f60e01b036112ef57505061123f611253611258956020840151604051938492638dd7712f60e01b6020850152604060248501526064840190612e6b565b90604483015203601f19810183528261067b565b611b98565b9390975b80956060976001600160a01b0381166112c6575b5050509560806112ab96970151976112866106bc565b988952602089015260408801526060870152608086015260a0850152151560c0840152565b60e08201526112ba6001600255565b60405191829182610cbf565b6112ab98508280949850602083519301915af19560806112e46120bc565b979591979638611270565b611300955090611253913691610716565b93909761125c565b5081356111db565b600483633ee5aeb560e01b8152fd5b60203660031901126103b95761002160043561133a816103ef565b612442565b60009103126103b957565b346103b95760003660031901126103b9573360005260006020526001604060002001805463ffffffff8160781c161561142d576113b66113a86102558361139c6113976113f09660ff1690565b612483565b60781c63ffffffff1690565b65ffffffffffff42166124ce565b82547fffffffffffffff000000000000ffffffffffffffffffffffffffffffffffff001665ffffffffffff60981b609883901b1617909255565b60405165ffffffffffff909116815233907ffa9b3c14cc825c412c9ed81b3ba365a5b459439403f18829e572ed53a4180f0a9080602081016103b4565b606460405162461bcd60e51b815260206004820152600a60248201527f6e6f74207374616b6564000000000000000000000000000000000000000000006044820152fd5b346103b95760203660031901126103b9576100216000808080600435611496816103ef565b6001600160a01b0360016114bd336001600160a01b03166000526000602052604060002090565b019161154b83549361152365ffffffffffff61150f6114f56114e9896001600160701b039060081c1690565b6001600160701b031690565b976115018915156124ec565b60981c65ffffffffffff1690565b1661151b811515612537565b421015612582565b80547fffffffffffffff000000000000000000000000000000000000000000000000ff169055565b604080516001600160a01b03831681526020810185905233917fb7c918e0e249f999e965cafeb6c664271b3f4317d296461500e71da39f0cbda391a2165af16115926120bc565b506125cd565b346103b9576105796115b16115ac36610c74565b6126f0565b604051918291602083526020830190610d2f565b801515036103b957565b346103b9576102203660031901126103b95760043560243567ffffffffffffffff81116103b957611604903690600401610b93565b9061160e36610768565b610204359061161c826115c5565b6000935a82519361162d8584612d40565b61163683612137565b60208501526040850151956116826effffffffffffffffffffffffffffff8860c08901511760608901511760808901511760a08901511761010089015117610120890151171115612855565b6116ad86610100604082015160608301510160808301510160a08301510160c0830151019101510290565b906116bb88838888856130f7565b976116e26116de6116d38a516001600160a01b031690565b60208b015190613ffc565b1590565b61180a575a8503116117b8576060926001600160a01b0361170e60e05a9a01516001600160a01b031690565b16151590816117b0575b50611779575b509360806117559460a061175095610579999561175c99604087015260608601525a9003910135019101525a906120af565b6128a0565b6064900490565b604051938493846040919493926060820195825260208201520152565b8198506105799692508460a06117509561179e899561175c9a6117559a608097613c92565b9c90969a50949850955050945061171e565b905038611718565b60408051631101335b60e11b815260048101929092526024820152601e60448201527f41413236206f76657220766572696669636174696f6e4761734c696d69740000606482015280608481015b0390fd5b61180682604051918291631101335b60e11b835260048301608091815260406020820152601a60408201527f4141323520696e76616c6964206163636f756e74206e6f6e636500000000000060608201520190565b346103b95761187961187036610ed6565b92919091612b9d565b90610579604051928392151583526040602084015260408301906104a0565b346103b95760203660031901126103b9576001600160a01b036004356118bd816103ef565b16600052600060205265ffffffffffff604060002060018154910154908260405193849360a0850193855260ff8116151560208601526001600160701b03808260081c1616604086015263ffffffff808260781c1616606086015260981c161660808301520390f35b346103b95761194861193736610940565b809291611942612241565b506122c8565b6000198201918211610d2a576105799161196191611ef1565b51604051918291602083526020830190610d2f565b1561197d57565b606460405162461bcd60e51b815260206004820152601a60248201527f6d757374207370656369667920756e7374616b652064656c61790000000000006044820152fd5b156119c857565b606460405162461bcd60e51b815260206004820152601c60248201527f63616e6e6f7420646563726561736520756e7374616b652074696d65000000006044820152fd5b634e487b7160e01b600052601160045260246000fd5b906113888201809211610d2a57565b9060018201809211610d2a57565b91908201809211610d2a57565b15611a5357565b606460405162461bcd60e51b815260206004820152601260248201527f6e6f207374616b652073706563696669656400000000000000000000000000006044820152fd5b15611a9e57565b606460405162461bcd60e51b815260206004820152600e60248201527f7374616b65206f766572666c6f770000000000000000000000000000000000006044820152fd5b60405190611aef82610626565b606060408360008152600060208201520152565b60405190611b1082610605565b6000608083604051611b2181610642565b83815283602082015283604082015283606082015283838201528360a08201528360c08201528360e0820152836101008201528361012082015281528260208201528260408201528260608201520152565b90359061011e19813603018212156103b9570190565b6000198114610d2a5760010190565b93929093845190606082015181519081611d83575b505050505a900360808401510192600093845a835194611bcc86614949565b92611be160e08801516001600160a01b031690565b6001600160a01b038116919082611cb15750505050611c0785516001600160a01b031690565b925b5a8203019460a06060820151910151019160808501928351870390818111611c9c575b505085029460408501938451878110600014611c7157505050611c6d939450611c556000613b89565b5a9003905101905183611c688295614a42565b614973565b9190565b611c6d969295508780955060019450611c8c92910390613e69565b50611c976000613b89565b6149db565b9196916064919003600a020401943880611c2c565b95928051611cc2575b505050611c09565b9091929950611cd082613b89565b5a9260a089015190803b15611d7f579183929187848196948f611d25604051998a97889687947f7c627b2100000000000000000000000000000000000000000000000000000000865202908660048601613b98565b0393f19182611d65575b5050611d5957611806611d40613b45565b6040519182916365c8fd4d60e01b835260048301613bca565b5a900396388080611cba565b611d72611d78928261067b565b8061133f565b3880611d2f565b8380fd5b600080949360206001600160a01b0383965116910192f115611da85738808080611bad565b611806611db3613b45565b6040519182917f462c71b20000000000000000000000000000000000000000000000000000000083526020600484015260248301906104a0565b67ffffffffffffffff81116106215760051b60200190565b60405190610100820182811067ffffffffffffffff82111761062157604052606060e08360008152600060208201526000604082015260008382015260006080820152600060a0820152600060c08201520152565b90611e6482611ded565b611e71604051918261067b565b8281528092611e82601f1991611ded565b019060005b828110611e9357505050565b602090611e9e611e05565b82828501015201611e87565b634e487b7160e01b600052603260045260246000fd5b90821015611ed7576104f39160051b810190611b73565b611eaa565b60405190611eeb60208361067b565b60008252565b8051821015611ed75760209160051b010190565b611f0e82611e5a565b9160005b818110611f1f5750505090565b611f2a818385611ec0565b6020906000604051611f3c848261067b565b52611f45611e05565b50600060028054146120825790612037600194939260028055611f66611b03565b92611f708161333b565b84611f7b85836128b6565b929091935a9088606081015191611f956060820182612618565b8a6003821161207a575b7fffffffff0000000000000000000000000000000000000000000000000000000016638dd7712f60e01b0361206257505061125385638dd7712f60e01b9261123f6120029886015191604051958694850152604060248501526064840190612e6b565b93905b60806060980151986120156106bc565b998a52890152604088015285870152608086015260a0850152151560c0840152565b60e08201526120466001600255565b6120508287611ef1565b5261205b8186611ef1565b5001611f12565b612073965061125392503691610716565b9390612005565b508135611f9f565b80633ee5aeb560e01b60049252fd5b600319810191908211610d2a57565b600019810191908211610d2a57565b91908203918211610d2a57565b3d156120e7573d906120cd826106fa565b916120db604051938461067b565b82523d6000602084013e565b606090565b156120f357565b606460405162461bcd60e51b815260206004820152601260248201527f6661696c656420746f20776974686472617700000000000000000000000000006044820152fd5b60208101356121f961214c6040840184612618565b908160405191823720916121eb6121666060860186612618565b90816040519182372060c086013560a0870135608088013561219461218e60e08b018b612618565b90614b74565b936040519889976001600160a01b0360208a019c35168c94919260e096939998979491996001600160a01b0361010088019b168752602087015260408601526060850152608084015260a083015260c08201520152565b03601f19810183528261067b565b5190206040805160208101928352309181019190915246606082015261222281608081016121eb565b51902090565b604051906122358261065f565b60006020838281520152565b6040519061224e82610605565b8160405161225b81610605565b60008152600060208201526000604082015260006060820152606060808201528152612285612228565b6020820152612292612228565b604082015261229f612228565b60608201526080604051916122b38361065f565b600083526122bf612228565b60208401520152565b6122d182611ded565b916122df604051938461067b565b808352601f196122ee82611ded565b0160005b81811061233857505060005b81811061230b5750505090565b8061231c6115ac6001938587611ec0565b6123268287611ef1565b526123318186611ef1565b50016122fe565b602090612343612241565b828288010152016122f2565b908092918237016000815290565b356104f3816103ef565b6040519061237660208361067b565b6000808352366020840137565b9061238d826106fa565b61239a604051918261067b565b82815280926123ab601f19916106fa565b0190602036910137565b906123c891969594939296610550611ae2565b6001600160a01b036123da8680611b73565b6124036020880135916123ec836103ef565b6123f4611b03565b906123fe8161333b565b6128b6565b5050501615612415576104f39461391a565b5050505050612422612367565b6040519061242f82610626565b6000825260006020830152604082015290565b7f2da466a7b24304f47e87fa2e1e5a81b9831ce54fec19055ce277ca2f39ba42c460206001600160a01b036124773485613e69565b936040519485521692a2565b1561248a57565b606460405162461bcd60e51b815260206004820152601160248201527f616c726561647920756e7374616b696e670000000000000000000000000000006044820152fd5b9065ffffffffffff8091169116019065ffffffffffff8211610d2a57565b156124f357565b606460405162461bcd60e51b815260206004820152601460248201527f4e6f207374616b6520746f2077697468647261770000000000000000000000006044820152fd5b1561253e57565b606460405162461bcd60e51b815260206004820152601d60248201527f6d7573742063616c6c20756e6c6f636b5374616b6528292066697273740000006044820152fd5b1561258957565b606460405162461bcd60e51b815260206004820152601b60248201527f5374616b65207769746864726177616c206973206e6f742064756500000000006044820152fd5b156125d457565b606460405162461bcd60e51b815260206004820152601860248201527f6661696c656420746f207769746864726177207374616b6500000000000000006044820152fd5b903590601e19813603018212156103b9570180359067ffffffffffffffff82116103b9576020019181360383136103b957565b906014116103b95790601490565b90929192836034116103b95783116103b957603401916033190190565b356bffffffffffffffffffffffff19811692919060148210612696575050565b6bffffffffffffffffffffffff1960149290920360031b82901b16169150565b604051906126c38261065f565b6003546001600160a01b031682526040516020836126e08361065f565b6004548352600554828401520152565b6126f8612241565b50612701611b03565b9061270b8161333b565b61271582826128b6565b509190926127238385613e91565b61274061273b60e0835101516001600160a01b031690565b613fb9565b9161276e61275a61273b84516001600160a01b0390511690565b91612763612228565b506040810190612618565b90601482106128495761279061278a6127969361273b9361264b565b90612676565b60601c90565b916001600160a01b0386169460808201519660606040840151930151926127bb61069d565b98895260208901526040880152606087015260808601526127da6126b6565b938015158061283e575b61280c575b506127f261069d565b948552602085015260408401526060830152608082015290565b90935061281881613fb9565b6128326128236106cc565b6001600160a01b039093168352565b602082015292386127e9565b5060018114156127e4565b50506127966000613fb9565b1561285c57565b606460405162461bcd60e51b815260206004820152601860248201527f41413934206761732076616c756573206f766572666c6f7700000000000000006044820152fd5b90607382029180830460731490151715610d2a57565b90916000915a938051916128ca8382612d40565b6128d381612137565b602083015260408301519561291f6effffffffffffffffffffffffffffff8860c08701511760608701511760808701511760a08701511761010087015117610120870151171115612855565b61294a84610100604082015160608301510160808301510160a08301510160c0830151019101510290565b6129588882868660006130f7565b9761297b6116de61297088516001600160a01b031690565b602089015190613ffc565b612a72575a830311612a1e576060906001600160a01b036129a760e05a9801516001600160a01b031690565b16151580612a16575b6129e3575b6117509360a06104f39794879460809460406117559a015260608601525a9003910135019101525a906120af565b965050928260808360a06104f397612a048b61175599611750996000613c92565b9b9095985093509497505093506129b5565b5060016129b0565b604051631101335b60e11b815280611806600060048301608091815260406020820152601e60408201527f41413236206f76657220766572696669636174696f6e4761734c696d6974000060608201520190565b604051631101335b60e11b815280611806600060048301608091815260406020820152601a60408201527f4141323520696e76616c6964206163636f756e74206e6f6e636500000000000060608201520190565b908060209392818452848401376000828201840152601f01601f1916010190565b6040906001600160a01b036104f395931681528160208201520191612ac6565b6040513d6000823e3d90fd5b908151811015611ed7570160200190565b81601f820112156103b9578051612b3a816106fa565b92612b48604051948561067b565b818452602082840101116103b9576104f3916020808501910161047d565b9190916040818403126103b9578051612b7e816115c5565b92602082015167ffffffffffffffff81116103b9576104f39201612b24565b91926000936001600160a01b036060941691823b156103b957612c1d93600080946040518097819682957f850aaf620000000000000000000000000000000000000000000000000000000084526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001660048501612ae7565b0393f19081612cd7575b5061096b575050612c366120bc565b906004825110612cc857612c52612c4d8351612091565b612383565b60045b8351811015612cb25780612c94612c6e60019387612b13565b517fff000000000000000000000000000000000000000000000000000000000000001690565b612cab612ca083612091565b9160001a9185612b13565b5301612c55565b5061096b91925060208082518301019101612b66565b9050612cd2612367565b600091565b80611d726000612ce69361067b565b38612c27565b61040b33612442565b15612cfc57565b606460405162461bcd60e51b815260206004820152601d60248201527f4141393320696e76616c6964207061796d6173746572416e64446174610000006044820152fd5b612dd790612d5d612d508261235d565b6001600160a01b03168452565b60208101356020840152612d8a6080820135906fffffffffffffffffffffffffffffffff8260801c921690565b6060850152604084015260a081013560c0840152612dc160c0820135906fffffffffffffffffffffffffffffffff8260801c921690565b61010085015261012084015260e0810190612618565b908115612e1357612dfb8260e092612df6603461040b97961015612cf5565b61404e565b60a085015260808401526001600160a01b0316910152565b505060a081600060e0819401528260808201520152565b908160209103126103b9575190565b9035601e19823603018112156103b957016020813591019167ffffffffffffffff82116103b95781360383136103b957565b6104f391612e8981612e7c84610400565b6001600160a01b03169052565b60208201356020820152612f1f612f13612eda612ebf612eac6040870187612e39565b6101206040880152610120870191612ac6565b612ecc6060870187612e39565b908683036060880152612ac6565b6080850135608085015260a085013560a085015260c085013560c0850152612f0560e0860186612e39565b9085830360e0870152612ac6565b92610100810190612e39565b91610100818503910152612ac6565b612f4660409295949395606083526060830190612e6b565b9460208201520152565b60a0906104f39392815260606020820152600d60608201527f4141323320726576657274656400000000000000000000000000000000000000608082015281604082015201906104a0565b92909161301e6020600095855193612fe860e0612fbf87516001600160a01b031690565b96612fda8a8c612fd26040890189612618565b9290916140ac565b01516001600160a01b031690565b91886001600160a01b038194161598896130bc575b85015191604051968795869485936306608bdf60e21b855260048501612f2e565b03926001600160a01b03881690f185918161308b575b5061305f5784613042613b45565b906118066040519283926365c8fd4d60e01b845260048401612f50565b93919261306a575050565b613087906001600160a01b03166000526000602052604060002090565b5050565b6130ae91925060203d6020116130b5575b6130a6818361067b565b810190612e2a565b9038613034565b503d61309c565b93506130db876001600160a01b03166000526000602052604060002090565b5480156130ee575084815b949050612ffd565b859082036130e6565b949291939060206131679186519361312e60e061311b87516001600160a01b031690565b96612fda8b8d612fd26040890189612618565b916001600160a01b0360009316159889613234575b84600091015191604051968795869485936306608bdf60e21b855260048501612f2e565b03926001600160a01b03881690f160009181613213575b5061318c5785613042613b45565b94929361319857505050565b6131b5906001600160a01b03166000526000602052604060002090565b918254908183116131c65750039055565b60408051631101335b60e11b815260048101929092526024820152601760448201527f41413231206469646e2774207061792070726566756e640000000000000000006064820152608490fd5b61322d91925060203d6020116130b5576130a6818361067b565b903861317e565b9250613253866001600160a01b03166000526000602052604060002090565b548781111561326b5750600084815b94915050613143565b846000918903613262565b9160005b828110156133355761328a611b03565b6000908260051b860135605e198736030181121561333157906132c560019493928801916132bb6105638480611b73565b6123fe8380611b73565b50505060208101906132e56132d98361235d565b6001600160a01b031690565b1561332957826133036132f8829461235d565b926040810190612618565b91906133146040518094819361234f565b03925af1506133216120bc565b505b0161327a565b505050613323565b8280fd5b50915050565b61336e9061334c6040820182612618565b9161336681359161335c836103ef565b60e0810190612618565b93909261434d565b80516133775750565b61180690604051918291631101335b60e11b8352600060048401526040602484015260448301906104a0565b9392916133c9906001600160a01b036040931686526060602087015260608601906104a0565b930152565b939490946133da611ae2565b5060009280156136335761341f93506133f1611edc565b509160006134015a8860026146e8565b5a906040519687928392631efc84dd60e31b84528c600485016133a3565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1918215613587576000948593613612575b508294809381156135ef57505061347d909592919394955b85611a3f565b806001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016965b846134b588856120af565b106135c5575a6134c488611a22565b1161358c57918695939189959360008c8b6134f76134ee6134e8886135179f611a3f565b60011c90565b809b60026146e8565b835a936040519e8f9586948593631efc84dd60e31b8552600485016133a3565b03925af198891561358757600090819a613561575b501561354c5750505061353e846120a0565b95915b9390929495916134aa565b9396509461355b919750611a31565b94613541565b9061357f929a503d8091833e613577818361067b565b810190612b66565b98903861352c565b612b07565b7fe2c4d0be0000000000000000000000000000000000000000000000000000000060005260048290526024879052604483905260646000fd5b9650965050919550506135e791506135db6106db565b93845215156020840152565b604082015290565b965096505095505050506135e76136046106db565b600081529215156020840152565b90925061362991943d8091833e613577818361067b565b939093913861345f565b50613665915a91846136475a8960026146e8565b5a906040519687928392631efc84dd60e31b84528d600485016133a3565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1938415613587578580956136cb575b505083946136b381945a906120af565b9481156135ef57505061347d90959291939495613477565b909194506136e49295503d8091833e613577818361067b565b9390939238806136a3565b939490946136fb611ae2565b50600092801561387c576137229350613712611edc565b509160006134015a8860036146e8565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af191821561358757600094859361385b575b508294809381156135ef57505061377f9095929193949585611a3f565b806001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016965b846137b788856120af565b106135c5575a6137c688611a22565b1161358c57918695939189959360008c8b6134f76137ea6134e8886137f39f611a3f565b809b60036146e8565b03925af198891561358757600090819a61383d575b50156138285750505061381a846120a0565b95915b9390929495916137ac565b93965094613837919750611a31565b9461381d565b90613853929a503d8091833e613577818361067b565b989038613808565b90925061387291943d8091833e613577818361067b565b9390939138613762565b50613890915a91846136475a8960036146e8565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1938415613587578580956138f6575b505083946138de81945a906120af565b9481156135ef57505061377f90959291939495613477565b9091945061390f9295503d8091833e613577818361067b565b9390939238806138ce565b93949094613926611ae2565b506000928015613aa75761394d935061393d611edc565b509160006134015a8860016146e8565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1918215613587576000948593613a86575b508294809381156135ef5750506139aa9095929193949585611a3f565b806001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016965b846139e288856120af565b106135c5575a6139f188611a22565b1161358c57918695939189959360008c8b6134f7613a156134e888613a1e9f611a3f565b809b60016146e8565b03925af198891561358757600090819a613a68575b5015613a5357505050613a45846120a0565b95915b9390929495916139d7565b93965094613a62919750611a31565b94613a48565b90613a7e929a503d8091833e613577818361067b565b989038613a33565b909250613a9d91943d8091833e613577818361067b565b939093913861398d565b50613abb915a91846136475a8960016146e8565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af193841561358757858095613b21575b50508394613b0981945a906120af565b9481156135ef5750506139aa90959291939495613477565b90919450613b3a9295503d8091833e613577818361067b565b939093923880613af9565b3d6108008111613b6a575b604051906020818301016040528082526000602083013e90565b50610800613b50565b634e487b7160e01b600052602160045260246000fd5b60031115613b9357565b613b73565b90949392946003811015613b9357606092613bc09183526080602084015260808301906104a0565b9460408201520152565b9060a06104f3926000815260606020820152601460608201527f4141353020706f73744f70207265766572746564000000000000000000000000608082015281604082015201906104a0565b91906040838203126103b957825167ffffffffffffffff81116103b957602091613c41918501612b24565b92015190565b60a0906104f39392815260606020820152600d60608201527f4141333320726576657274656400000000000000000000000000000000000000608082015281604082015201906104a0565b929390915a92815190613caf60e08301516001600160a01b031690565b91613ccd836001600160a01b03166000526000602052604060002090565b8054898110613e14576001600160a01b0360206080600097958d9795613d2f9d9e8a960390550151970151926040519a8b96879586937f52b7512c00000000000000000000000000000000000000000000000000000000855260048501612f2e565b03931686f19384600091600096613ded575b50613d6c5785613d4f613b45565b906118066040519283926365c8fd4d60e01b845260048401613c47565b9491925a900311613d7a5750565b60408051631101335b60e11b815260048101929092526024820152602760448201527f41413336206f766572207061796d6173746572566572696669636174696f6e4760648201527f61734c696d697400000000000000000000000000000000000000000000000000608482015260a490fd5b909550613e0d91503d806000833e613e05818361067b565b810190613c16565b9438613d41565b61180689604051918291631101335b60e11b835260048301608091815260406020820152601e60408201527f41413331207061796d6173746572206465706f73697420746f6f206c6f77000060608201520190565b6001600160a01b0316600052600060205260406000208054918201809211610d2a5781905590565b613ea26001600160a01b0391614a85565b9116613f6d57613f1957613ebd6001600160a01b0391614a85565b5016613ec557565b604051631101335b60e11b815280611806600060048301608091815260406020820152601460408201527f41413334207369676e6174757265206572726f7200000000000000000000000060608201520190565b604051631101335b60e11b815280611806600060048301608091815260406020820152601760408201527f414132322065787069726564206f72206e6f742064756500000000000000000060608201520190565b6084604051631101335b60e11b81526000600482015260406024820152601460448201527f41413234207369676e6174757265206572726f720000000000000000000000006064820152fd5b906001600160a01b03613fca612228565b9216600052600060205263ffffffff6001604060002001546001600160701b038160081c16845260781c166020830152565b6001600160a01b0316600052600160205267ffffffffffffffff61403a8260401c6040600020906001600160c01b0316600052602052604060002090565b9182549261404784611b89565b9055161490565b9091826014116103b957813591836024116103b9576014810135936034116103b95760609290921c92608090811c9260240135901c90565b908160209103126103b957516104f3816103ef565b9160206104f3938181520191612ac6565b929091816140bb575b50505050565b8251516001600160a01b031693843b61430057604084510151602060405180927f570e1a36000000000000000000000000000000000000000000000000000000008252816000816141108a8a6004840161409b565b03926001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690f1908115613587576000916142d1575b506001600160a01b03811695861561427c576001600160a01b0316809603614227573b156141da575061279061278a7fd51a9c61267aa6196961883ecf5ff2da6619c37dac0fa92122513fb32c032d2d936141a79361264b565b602083810151935160e00151604080516001600160a01b039485168152939091169183019190915290a3388080806140b5565b60408051631101335b60e11b815260048101929092526024820152602060448201527f4141313520696e6974436f6465206d757374206372656174652073656e6465726064820152608490fd5b61180682604051918291631101335b60e11b835260048301608091815260406020820152602060408201527f4141313420696e6974436f6465206d7573742072657475726e2073656e64657260608201520190565b61180683604051918291631101335b60e11b835260048301608091815260406020820152601b60408201527f4141313320696e6974436f6465206661696c6564206f72204f4f47000000000060608201520190565b6142f3915060203d6020116142f9575b6142eb818361067b565b810190614086565b3861414d565b503d6142e1565b60408051631101335b60e11b815260048101929092526024820152601f60448201527f414131302073656e64657220616c726561647920636f6e7374727563746564006064820152608490fd5b50929192159081614402575b506143c5576014811015614372575b50506104f3611edc565b6014116103b9573560601c3b1561438a573880614368565b60405161439860408261067b565b601b81527f41413330207061796d6173746572206e6f74206465706c6f7965640000000000602082015290565b50506040516143d560408261067b565b601981527f41413230206163636f756e74206e6f74206465706c6f79656400000000000000602082015290565b90503b1538614359565b610120813603126103b95761441f6106ea565b9061442981610400565b825260208101356020830152604081013567ffffffffffffffff81116103b957614456903690830161074d565b6040830152606081013567ffffffffffffffff81116103b95761447c903690830161074d565b60608301526080810135608083015260a081013560a083015260c081013560c083015260e081013567ffffffffffffffff81116103b9576144c0903690830161074d565b60e08301526101008101359067ffffffffffffffff82116103b9576144e79136910161074d565b61010082015290565b60041115613b9357565b91926fffffffffffffffffffffffffffffffff196034959481936bffffffffffffffffffffffff199060601b168552166014840152166024820152614548825180936020868501910161047d565b010190565b80516001600160a01b031682526104f391602082015160208201526101006145ce61459e61458c604086015161012060408701526101208601906104a0565b606086015185820360608701526104a0565b6080850151608085015260a085015160a085015260c085015160c085015260e085015184820360e08601526104a0565b920151906101008184039101526104a0565b60806101a09161012081516145fe8682516001600160a01b03169052565b602081015160208701526040810151604087015260608101516060870152838101518487015260a081015160a087015260c081015160c087015261465260e082015160e08801906001600160a01b03169052565b61010081015161010087015201516101208501526020810151610140850152604081015161016085015260608101516101808501520151910152565b6146be6146b3610200939695949660008452610220602085015261022084019061454d565b9560408301906145e0565b0152565b610200906146be6146b3600094969596858452610220602085015261022084019061454d565b6146f0611b03565b6147026146fd8480611b73565b61440c565b61470b836144f0565b600283146148645761471c836144f0565b600383146147dd575050806147326001926144f0565b1461477c5760405162461bcd60e51b815260206004820152600c60248201527f496e76616c6964206d6f646500000000000000000000000000000000000000006044820152606490fd5b806121eb6147a76147a061479560206104f3960161235d565b936040810190612618565b3691610716565b936040519485937f44403473000000000000000000000000000000000000000000000000000000006020860152602485016133a3565b9150926fffffffffffffffffffffffffffffffff61482461481d614804866104f397611b73565b608001356fffffffffffffffffffffffffffffffff1690565b9260801b90565b91161760808201526121eb6040519384927fc579f76b000000000000000000000000000000000000000000000000000000006020850152602484016146c2565b9150926121eb906fffffffffffffffffffffffffffffffff19846148ef6148e161489d61489761335c856104f39b611b73565b9061404e565b9291905060609060e08a0195603487515111614925575b5060405196879460801b16906fffffffffffffffffffffffffffffffff198960801b1690602086016144fa565b03601f19810184528361067b565b526040519485937f21e60b370000000000000000000000000000000000000000000000000000000060208601526024850161468e565b61494291925061493b61335c826147a093611b73565b8091612659565b90386148b4565b61012061010082015191015180821461496f5748018082101561496a575090565b905090565b5090565b9190917f49628fd1471006c1482da88028e9ce4dbb080b815c9b0344d39e5a8e6ec1419f608060208301519251946001600160a01b038651169460206001600160a01b0360e089015116970151916040519283526000602084015260408301526060820152a4565b9060807f49628fd1471006c1482da88028e9ce4dbb080b815c9b0344d39e5a8e6ec1419f9160208401519351956001600160a01b038751169560206001600160a01b0360e08a015116980151926040519384521515602084015260408301526060820152a4565b60208101519051907f67b4fa9642f42120bf031f3051d1824b0fe25627945b27b8a6a65d5761d5482e6020806001600160a01b03855116940151604051908152a3565b8015614b6b57600060408051614a9a81610626565b828152826020820152015265ffffffffffff8160a01c168015614b5e575b614b4090614b27614acf614ada614acf8660d01c90565b65ffffffffffff1690565b92614aff6001600160a01b03614aee6106db565b971687906001600160a01b03169052565b614b156020870194859065ffffffffffff169052565b65ffffffffffff166040860181905290565b4211908115614b43575b5091516001600160a01b031690565b91565b51614b56915065ffffffffffff16614acf565b421038614b31565b5065ffffffffffff614ab8565b50600090600090565b81604051918237209056fea2646970667358221220441b8fdf46a1f4ccd0f03d8c06c651814a9e44483e5f099d98fa1af1b70c050864736f6c634300081c003360808060405234601557610179908161001b8239f35b600080fdfe6080600436101561000f57600080fd5b60003560e01c63570e1a361461002457600080fd5b3461013e57602036600319011261013e5760043567ffffffffffffffff811161013e573660238201121561013e57806004013567ffffffffffffffff811161013e57366024828401011161013e576000928160141161013a5760131982019167ffffffffffffffff831161012657600b8101601f19908116603f0116820167ffffffffffffffff8111838210176101125760246020959387600c819795829560405286845289840196603889018837830101525193013560601c5af19051901561010a575b60209073ffffffffffffffffffffffffffffffffffffffff60405191168152f35b5060006100e9565b602486634e487b7160e01b81526041600452fd5b602485634e487b7160e01b81526041600452fd5b8380fd5b600080fdfea26469706673582212209dffb155e295aac90dab6d90a7e1c0cbfa99a678d78a40c2d0529fc532d9723164736f6c634300081c0033","sourceMap":"113:1074:21:-:0;;;;;;;238:27;;;;-1:-1:-1;;;;;238:27:21;;;;;;;;;;;;;;;;;;;;;;113:1074;;-1:-1:-1;;;;;;113:1074:21;-1:-1:-1;;;;;113:1074:21;;;;;;;;;;;;;517:29;;238:27;517:29;113:1074;;;;;;;238:27;113:1074;;;238:27;113:1074;;;;;238:27;113:1074;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436101561001257600080fd5b60003560e01c63c18f52261461002757600080fd5b346102b55760403660031901126102b55760043573ffffffffffffffffffffffffffffffffffffffff81168091036102b55760243567ffffffffffffffff81116102b557366023820112156102b5578060040135610084816102f2565b9161009260405193846102d0565b8183526024602084019260051b820101903682116102b55760248101925b82841061023d57845185876100c4836102f2565b926100d260405194856102d0565b8084526100e1601f19916102f2565b0160005b81811061022c57505060005b82518110156101c457600190606060008061016f73ffffffffffffffffffffffffffffffffffffffff82541661017d61012a878b61034b565b5160405193849160208301947f850aaf62000000000000000000000000000000000000000000000000000000008652602484015260406044840152606483019061030a565b03601f1981018452836102d0565b82885a935193f1156101a6575b610194828761034b565b5261019f818661034b565b50016100f1565b503d604051906020818301016040528082526000602083013e61018a565b836040518091602082016020835281518091526040830190602060408260051b8601019301916000905b8282106101fd57505050500390f35b9193600191939550602061021c8192603f198a8203018652885161030a565b96019201920185949391926101ee565b8060606020809388010152016100e5565b833567ffffffffffffffff81116102b5578201366043820112156102b55760248101359167ffffffffffffffff83116102ba57604051610287601f8501601f1916602001826102d0565b83815236604484860101116102b55760006020858196604483970183860137830101528152019301926100b0565b600080fd5b634e487b7160e01b600052604160045260246000fd5b90601f8019910116810190811067ffffffffffffffff8211176102ba57604052565b67ffffffffffffffff81116102ba5760051b60200190565b919082519283825260005b848110610336575050826000602080949584010152601f8019910116010190565b80602080928401015182828601015201610315565b805182101561035f5760209160051b010190565b634e487b7160e01b600052603260045260246000fdfea264697066735822122062975c4d47768efffe557c10cf10ecfd39a72d039f0f35a49aec99a5ff87f9bb64736f6c634300081c0033","sourceMap":"113:1074:21:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;113:1074:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;743:13;;113:1074;775:3;113:1074;;758:15;;;;;113:1074;794:23;113:1074;;428:53;;113:1074;428:53;;113:1074;855:55;902:7;;;;:::i;:::-;;113:1074;;855:55;;;113:1074;855:55;;;113:1074;855:55;;113:1074;855:55;;428:53;113:1074;428:53;;;;;;;;;:::i;:::-;855:55;113:1074;;855:55;;;;;;:::i;:::-;966:9;;;378:118:13;;;;994:8:21;990:101;;775:3;1104:31;;;;:::i;:::-;;;;;;:::i;:::-;;113:1074;743:13;;990:101;1204:349:13;;113:1074:21;1204:349:13;;113:1074:21;1204:349:13;;;;113:1074:21;1204:349:13;;;;113:1074:21;;1204:349:13;;;990:101:21;;758:15;;113:1074;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;113:1074:21;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;113:1074:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;428:53;113:1074;;428:53;;;;;;;;;;;;:::o;:::-;-1:-1:-1;;;428:53:21;;;;;;;","linkReferences":{}},"methodIdentifiers":{"simulateEntryPoint(address,bytes[])":"c18f5226"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.28+commit.7893614a\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"PimlicoSimulationV7Deployed\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"ep\",\"type\":\"address\"},{\"internalType\":\"bytes[]\",\"name\":\"data\",\"type\":\"bytes[]\"}],\"name\":\"simulateEntryPoint\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"\",\"type\":\"bytes[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/v07/PimlicoEntryPointSimulationsV7.sol\":\"PimlicoEntryPointSimulationsV7\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1000},\"remappings\":[\":@openzeppelin/contracts-51/=lib/openzeppelin-contracts-51/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":account-abstraction-v6/=lib/account-abstraction-v6/contracts/\",\":account-abstraction-v7/=lib/account-abstraction-v7/contracts/\",\":account-abstraction-v8/=lib/account-abstraction-v8/contracts/\",\":account-abstraction/=lib/account-abstraction-v6/contracts/\",\":bulk/=lib/bulk/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":halmos-cheatcodes/=lib/openzeppelin-contracts-51/lib/halmos-cheatcodes/src/\",\":lib/openzeppelin-contracts-51/=lib/openzeppelin-contracts-51/\",\":openzeppelin-contracts-51/=lib/openzeppelin-contracts-51/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":p256-verifier/=lib/bulk/lib/p256-verifier/\",\":solady/=lib/solady/src/\"],\"viaIR\":true},\"sources\":{\"lib/account-abstraction-v7/contracts/core/Helpers.sol\":{\"keccak256\":\"0x6247e011a6cb0b263b3aa098822977181674d91b62e5bdfe04c6e66f72da25d6\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://ca829a69b3fbc74fec8e140d42a2bf93bc3512609272f031c846470f61f0ab7e\",\"dweb:/ipfs/QmP3r3MBgAN39KeVB1rCGJWwcBcotNt26ALtAR54poQ1Jc\"]},\"lib/account-abstraction-v7/contracts/core/NonceManager.sol\":{\"keccak256\":\"0x1f951786ce6f171e7ed0242fee73ee4a205c7523404ee6cffca48b8c64ea5fe9\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://a602bf2274d478dae7a532cca31f8179131808c324cc26ece5c7e87c5a1015a6\",\"dweb:/ipfs/QmaaSyw5GGbAWzUhAPCtsb38P3MmaVr1ngp61PYHCU2a5a\"]},\"lib/account-abstraction-v7/contracts/core/SenderCreator.sol\":{\"keccak256\":\"0xeb95afb6e4cf921c1ed105ecb9f549ca46bee57f68acd1d2f4f84607ac0db5c5\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://d2ac91562f1fcabe4809a1b4256895efebcf46f89e08336a6c09ee2d29733238\",\"dweb:/ipfs/QmPsQnPcCzioPwVtUhxkbnwKPC1bnhHSbAwK9GXVpjN3mH\"]},\"lib/account-abstraction-v7/contracts/core/StakeManager.sol\":{\"keccak256\":\"0x673eb19600058d8642605ca409c9e1d4cab13735564b856270b92c330ffb1b8d\",\"license\":\"GPL-3.0-only\",\"urls\":[\"bzz-raw://06599c57c7075ee8eb5f1710fccca3eb322876b968ec271e1fb34af41510ab2c\",\"dweb:/ipfs/QmVsDEjmZYtzgXa4AYKxbQEYQVh6NBq8GmFJCariBUqK4G\"]},\"lib/account-abstraction-v7/contracts/core/UserOperationLib.sol\":{\"keccak256\":\"0x9d50ece985d35f82e33e5da417595c86fac10449e3d10895d08363d33aad454b\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://b1d11cc364c8bf7ed5388268c895b5ffed16e87dfbcb320ddeeba5e7974315dc\",\"dweb:/ipfs/QmYSpvjxEjweietQrYZagwQ52ipy7eXx4rwvnTzXKeGeMS\"]},\"lib/account-abstraction-v7/contracts/interfaces/IAccount.sol\":{\"keccak256\":\"0x38710bec0cb20ff4ceef46a80475b5bdabc27b7efd2687fd473db68332f61b78\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://dea7a723e1ef852e8764e69914a345d2e8bc5e13facfc9d5c29d791cb4ab0020\",\"dweb:/ipfs/QmU8dYgyF4DBJXFqjwLAtnE3q8q259ChfoEk9a6wyhHzEP\"]},\"lib/account-abstraction-v7/contracts/interfaces/IAccountExecute.sol\":{\"keccak256\":\"0xd3dc32dde1add1fb6377f939ceff6be31c2e21343522311f7b88db666be9ee6c\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://5b8f065171bd32e23b306868189c730f849ce6147f753c59e396e7afcf384577\",\"dweb:/ipfs/QmZpDRNEZ9YNgGgyLQo5yM4bB1FNbtnfDABsChbgSQKXUh\"]},\"lib/account-abstraction-v7/contracts/interfaces/IAggregator.sol\":{\"keccak256\":\"0xf100d6fcc0c3b450b13e979b6a42c628c292a1bc340eccc2e7796b80e3975588\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://192938b5b27234d35c8098a319e879363c79f750eea4d0e409dc889a8ce5b155\",\"dweb:/ipfs/QmURpaJFPqEtkKP2ngBsgZhAGN8wAWh5XQpYmCkiz4Urz5\"]},\"lib/account-abstraction-v7/contracts/interfaces/IEntryPoint.sol\":{\"keccak256\":\"0x1972a5fcb3a808b58c85af5741949ef6af11ab0debd3ae8c708171ae1ae0d0c4\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://baa9837ae73b9e2362a47d42d081d7c0f3d8e878e5edb381117d94a6968949c9\",\"dweb:/ipfs/QmUmo6FUE7fv5z1WzW1YFjxp8PqaeN2JrEee9au59w3Xhe\"]},\"lib/account-abstraction-v7/contracts/interfaces/INonceManager.sol\":{\"keccak256\":\"0xd575af0f6ebbd5f0b2933307d44cd7b4e03a69f4b817a67db5409bd3c89aeecb\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://3b1e2dea9b05cfba9d13339ed16d96457dc861013cc4f3f35b71a80f82448db3\",\"dweb:/ipfs/QmVaGy5uGDMSiU2SzyokTjoHFyb39VVG5wtaM9KTnHyZSk\"]},\"lib/account-abstraction-v7/contracts/interfaces/IPaymaster.sol\":{\"keccak256\":\"0x49d8dbf8a85b006bcd89bbc40e4e9e113997cc016007de85263bdae70572d07f\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://bc0d83804c1b795d5c216b3518cd176c48f90db28550f267cbd89746d6b476c8\",\"dweb:/ipfs/QmNdCm4c6hnt7f6Q8q21QjtCNZWWRUaMVEYnQHEv68VnKt\"]},\"lib/account-abstraction-v7/contracts/interfaces/IStakeManager.sol\":{\"keccak256\":\"0xbe5ca9e7f254d031687419e7b96ef48c9c63e9398bbe992dc72ffc6dc14e0a04\",\"license\":\"GPL-3.0-only\",\"urls\":[\"bzz-raw://1fffec71c38627a26fabb423350148009579f092623fb02b471a12d973763a00\",\"dweb:/ipfs/QmRBi31QEYXHj3x1AnQ2jKa2eziZH1b9av396P3b4dw6bj\"]},\"lib/account-abstraction-v7/contracts/interfaces/PackedUserOperation.sol\":{\"keccak256\":\"0x1129b46381db68eddbc5cb49e50664667b66b03c480453858e7b25eabe444359\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://499a948aba60480dba6e25c763b8d918f1c246eb7a3302e04f493e080f3295be\",\"dweb:/ipfs/QmeRhhswf4NACcBKam2PyjpTP2ddSm648kah5kkQJsvwz3\"]},\"lib/account-abstraction-v7/contracts/utils/Exec.sol\":{\"keccak256\":\"0x86b1b1cd11158dddb9d381040c57fdc643c74b5e4eed3e7e036f32452672ad74\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://ad88663b6c76df73cf09a272cf333d038df7bb4c51281284b572bf9b46e1cd77\",\"dweb:/ipfs/QmVKxYF8avyPBtqejVhFCM2CuHsfpsCh7TsPqkBLtrgwJQ\"]},\"lib/openzeppelin-contracts/contracts/utils/ReentrancyGuard.sol\":{\"keccak256\":\"0xf980daa263b661ab8ddee7d4fd833c7da7e7995e2c359ff1f17e67e4112f2236\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7448ab095d6940130bcf76ba47a2eab14148c83119523b93dd89f6d84edd6c02\",\"dweb:/ipfs/QmawrZ4voKQjH3oomXT3Kuheb3Mnmo2VvVpxg8Ne5UJUrd\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0x9e8778b14317ba9e256c30a76fd6c32b960af621987f56069e1e819c77c6a133\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1777404f1dcd0fac188e55a288724ec3c67b45288e49cc64723e95e702b49ab8\",\"dweb:/ipfs/QmZFdC626GButBApwDUvvTnUzdinevC3B24d7yyh57XkiA\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df\",\"dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL\"]},\"src/v07/EntryPoint.sol\":{\"keccak256\":\"0xe67e8ce0af5e518732ca3f3ca14f2f7963547f3a27e6567c2f6b45c70ffb10f9\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://77f0af329d36750a40ab832cb78bbaa2e1133048aeb23bd97c0f61426ecd859c\",\"dweb:/ipfs/QmUJiU774ZM9Wfs7BWtYZ2Xktf9baZQ7QhFsgdLPDJfYni\"]},\"src/v07/EntryPointSimulations.sol\":{\"keccak256\":\"0xc78870c32f604870528b484290626b2e51e294d997831fb19b80f67d8edf9fe7\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://8d3cad5bdb8f861ad110ac68e50a2b5ddaecb63aabe3ab085efcfdd2371dd7b8\",\"dweb:/ipfs/QmZ4eAM9mZfR9YixFnbmThVhwRy2JibAinfbgnoKSYvijW\"]},\"src/v07/IEntryPoint.sol\":{\"keccak256\":\"0xca38cd0a2ed294deb3f36c933de236524a597ffc72da21a925458780d0b13b2d\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://01dc9ca228751a7ba99e72d88c8dd3bfcae6d9bb85180a9ea7efc0550e9237a0\",\"dweb:/ipfs/QmPsEVXWZAZCKWuys3eqShSXCtHZCSc1bYQhHGDHuABYc6\"]},\"src/v07/IEntryPointSimulations.sol\":{\"keccak256\":\"0x49c6650bcbc4d4725aaa3aad66381c1c20b2a5d8b0249dcfa95fc65337d7f0ab\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://2aaf93b6816132dd0e098dbbec2c5ae11f561df8b373645f5d266d2106af9b77\",\"dweb:/ipfs/QmPMKdVZpub1sHSSXmSufmwC5ZfaL3v5GpcNU4QY6Hw6cN\"]},\"src/v07/PimlicoEntryPointSimulationsV7.sol\":{\"keccak256\":\"0x1c66f35a4a3e68de494e7b98319da78691c504d7b00dd178f0a97066d6e2e4c4\",\"urls\":[\"bzz-raw://6ca1adcab2d6f96a93039e3a8e79ba54f03af90ef04b8329778bd8a2ff0d8e22\",\"dweb:/ipfs/QmZunE8jAxiA2E96Qe5gwiwp1usDu7hPWiXX2xPNnWNqoX\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.28+commit.7893614a"},"language":"Solidity","output":{"abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"type":"event","name":"PimlicoSimulationV7Deployed","anonymous":false},{"inputs":[{"internalType":"address payable","name":"ep","type":"address"},{"internalType":"bytes[]","name":"data","type":"bytes[]"}],"stateMutability":"nonpayable","type":"function","name":"simulateEntryPoint","outputs":[{"internalType":"bytes[]","name":"","type":"bytes[]"}]}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-51/=lib/openzeppelin-contracts-51/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","account-abstraction-v6/=lib/account-abstraction-v6/contracts/","account-abstraction-v7/=lib/account-abstraction-v7/contracts/","account-abstraction-v8/=lib/account-abstraction-v8/contracts/","account-abstraction/=lib/account-abstraction-v6/contracts/","bulk/=lib/bulk/","ds-test/=lib/forge-std/lib/ds-test/src/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","halmos-cheatcodes/=lib/openzeppelin-contracts-51/lib/halmos-cheatcodes/src/","lib/openzeppelin-contracts-51/=lib/openzeppelin-contracts-51/","openzeppelin-contracts-51/=lib/openzeppelin-contracts-51/","openzeppelin-contracts/=lib/openzeppelin-contracts/","p256-verifier/=lib/bulk/lib/p256-verifier/","solady/=lib/solady/src/"],"optimizer":{"enabled":true,"runs":1000},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/v07/PimlicoEntryPointSimulationsV7.sol":"PimlicoEntryPointSimulationsV7"},"evmVersion":"london","libraries":{},"viaIR":true},"sources":{"lib/account-abstraction-v7/contracts/core/Helpers.sol":{"keccak256":"0x6247e011a6cb0b263b3aa098822977181674d91b62e5bdfe04c6e66f72da25d6","urls":["bzz-raw://ca829a69b3fbc74fec8e140d42a2bf93bc3512609272f031c846470f61f0ab7e","dweb:/ipfs/QmP3r3MBgAN39KeVB1rCGJWwcBcotNt26ALtAR54poQ1Jc"],"license":"GPL-3.0"},"lib/account-abstraction-v7/contracts/core/NonceManager.sol":{"keccak256":"0x1f951786ce6f171e7ed0242fee73ee4a205c7523404ee6cffca48b8c64ea5fe9","urls":["bzz-raw://a602bf2274d478dae7a532cca31f8179131808c324cc26ece5c7e87c5a1015a6","dweb:/ipfs/QmaaSyw5GGbAWzUhAPCtsb38P3MmaVr1ngp61PYHCU2a5a"],"license":"GPL-3.0"},"lib/account-abstraction-v7/contracts/core/SenderCreator.sol":{"keccak256":"0xeb95afb6e4cf921c1ed105ecb9f549ca46bee57f68acd1d2f4f84607ac0db5c5","urls":["bzz-raw://d2ac91562f1fcabe4809a1b4256895efebcf46f89e08336a6c09ee2d29733238","dweb:/ipfs/QmPsQnPcCzioPwVtUhxkbnwKPC1bnhHSbAwK9GXVpjN3mH"],"license":"GPL-3.0"},"lib/account-abstraction-v7/contracts/core/StakeManager.sol":{"keccak256":"0x673eb19600058d8642605ca409c9e1d4cab13735564b856270b92c330ffb1b8d","urls":["bzz-raw://06599c57c7075ee8eb5f1710fccca3eb322876b968ec271e1fb34af41510ab2c","dweb:/ipfs/QmVsDEjmZYtzgXa4AYKxbQEYQVh6NBq8GmFJCariBUqK4G"],"license":"GPL-3.0-only"},"lib/account-abstraction-v7/contracts/core/UserOperationLib.sol":{"keccak256":"0x9d50ece985d35f82e33e5da417595c86fac10449e3d10895d08363d33aad454b","urls":["bzz-raw://b1d11cc364c8bf7ed5388268c895b5ffed16e87dfbcb320ddeeba5e7974315dc","dweb:/ipfs/QmYSpvjxEjweietQrYZagwQ52ipy7eXx4rwvnTzXKeGeMS"],"license":"GPL-3.0"},"lib/account-abstraction-v7/contracts/interfaces/IAccount.sol":{"keccak256":"0x38710bec0cb20ff4ceef46a80475b5bdabc27b7efd2687fd473db68332f61b78","urls":["bzz-raw://dea7a723e1ef852e8764e69914a345d2e8bc5e13facfc9d5c29d791cb4ab0020","dweb:/ipfs/QmU8dYgyF4DBJXFqjwLAtnE3q8q259ChfoEk9a6wyhHzEP"],"license":"GPL-3.0"},"lib/account-abstraction-v7/contracts/interfaces/IAccountExecute.sol":{"keccak256":"0xd3dc32dde1add1fb6377f939ceff6be31c2e21343522311f7b88db666be9ee6c","urls":["bzz-raw://5b8f065171bd32e23b306868189c730f849ce6147f753c59e396e7afcf384577","dweb:/ipfs/QmZpDRNEZ9YNgGgyLQo5yM4bB1FNbtnfDABsChbgSQKXUh"],"license":"GPL-3.0"},"lib/account-abstraction-v7/contracts/interfaces/IAggregator.sol":{"keccak256":"0xf100d6fcc0c3b450b13e979b6a42c628c292a1bc340eccc2e7796b80e3975588","urls":["bzz-raw://192938b5b27234d35c8098a319e879363c79f750eea4d0e409dc889a8ce5b155","dweb:/ipfs/QmURpaJFPqEtkKP2ngBsgZhAGN8wAWh5XQpYmCkiz4Urz5"],"license":"GPL-3.0"},"lib/account-abstraction-v7/contracts/interfaces/IEntryPoint.sol":{"keccak256":"0x1972a5fcb3a808b58c85af5741949ef6af11ab0debd3ae8c708171ae1ae0d0c4","urls":["bzz-raw://baa9837ae73b9e2362a47d42d081d7c0f3d8e878e5edb381117d94a6968949c9","dweb:/ipfs/QmUmo6FUE7fv5z1WzW1YFjxp8PqaeN2JrEee9au59w3Xhe"],"license":"GPL-3.0"},"lib/account-abstraction-v7/contracts/interfaces/INonceManager.sol":{"keccak256":"0xd575af0f6ebbd5f0b2933307d44cd7b4e03a69f4b817a67db5409bd3c89aeecb","urls":["bzz-raw://3b1e2dea9b05cfba9d13339ed16d96457dc861013cc4f3f35b71a80f82448db3","dweb:/ipfs/QmVaGy5uGDMSiU2SzyokTjoHFyb39VVG5wtaM9KTnHyZSk"],"license":"GPL-3.0"},"lib/account-abstraction-v7/contracts/interfaces/IPaymaster.sol":{"keccak256":"0x49d8dbf8a85b006bcd89bbc40e4e9e113997cc016007de85263bdae70572d07f","urls":["bzz-raw://bc0d83804c1b795d5c216b3518cd176c48f90db28550f267cbd89746d6b476c8","dweb:/ipfs/QmNdCm4c6hnt7f6Q8q21QjtCNZWWRUaMVEYnQHEv68VnKt"],"license":"GPL-3.0"},"lib/account-abstraction-v7/contracts/interfaces/IStakeManager.sol":{"keccak256":"0xbe5ca9e7f254d031687419e7b96ef48c9c63e9398bbe992dc72ffc6dc14e0a04","urls":["bzz-raw://1fffec71c38627a26fabb423350148009579f092623fb02b471a12d973763a00","dweb:/ipfs/QmRBi31QEYXHj3x1AnQ2jKa2eziZH1b9av396P3b4dw6bj"],"license":"GPL-3.0-only"},"lib/account-abstraction-v7/contracts/interfaces/PackedUserOperation.sol":{"keccak256":"0x1129b46381db68eddbc5cb49e50664667b66b03c480453858e7b25eabe444359","urls":["bzz-raw://499a948aba60480dba6e25c763b8d918f1c246eb7a3302e04f493e080f3295be","dweb:/ipfs/QmeRhhswf4NACcBKam2PyjpTP2ddSm648kah5kkQJsvwz3"],"license":"GPL-3.0"},"lib/account-abstraction-v7/contracts/utils/Exec.sol":{"keccak256":"0x86b1b1cd11158dddb9d381040c57fdc643c74b5e4eed3e7e036f32452672ad74","urls":["bzz-raw://ad88663b6c76df73cf09a272cf333d038df7bb4c51281284b572bf9b46e1cd77","dweb:/ipfs/QmVKxYF8avyPBtqejVhFCM2CuHsfpsCh7TsPqkBLtrgwJQ"],"license":"LGPL-3.0-only"},"lib/openzeppelin-contracts/contracts/utils/ReentrancyGuard.sol":{"keccak256":"0xf980daa263b661ab8ddee7d4fd833c7da7e7995e2c359ff1f17e67e4112f2236","urls":["bzz-raw://7448ab095d6940130bcf76ba47a2eab14148c83119523b93dd89f6d84edd6c02","dweb:/ipfs/QmawrZ4voKQjH3oomXT3Kuheb3Mnmo2VvVpxg8Ne5UJUrd"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0x9e8778b14317ba9e256c30a76fd6c32b960af621987f56069e1e819c77c6a133","urls":["bzz-raw://1777404f1dcd0fac188e55a288724ec3c67b45288e49cc64723e95e702b49ab8","dweb:/ipfs/QmZFdC626GButBApwDUvvTnUzdinevC3B24d7yyh57XkiA"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b","urls":["bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df","dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL"],"license":"MIT"},"src/v07/EntryPoint.sol":{"keccak256":"0xe67e8ce0af5e518732ca3f3ca14f2f7963547f3a27e6567c2f6b45c70ffb10f9","urls":["bzz-raw://77f0af329d36750a40ab832cb78bbaa2e1133048aeb23bd97c0f61426ecd859c","dweb:/ipfs/QmUJiU774ZM9Wfs7BWtYZ2Xktf9baZQ7QhFsgdLPDJfYni"],"license":"GPL-3.0"},"src/v07/EntryPointSimulations.sol":{"keccak256":"0xc78870c32f604870528b484290626b2e51e294d997831fb19b80f67d8edf9fe7","urls":["bzz-raw://8d3cad5bdb8f861ad110ac68e50a2b5ddaecb63aabe3ab085efcfdd2371dd7b8","dweb:/ipfs/QmZ4eAM9mZfR9YixFnbmThVhwRy2JibAinfbgnoKSYvijW"],"license":"GPL-3.0"},"src/v07/IEntryPoint.sol":{"keccak256":"0xca38cd0a2ed294deb3f36c933de236524a597ffc72da21a925458780d0b13b2d","urls":["bzz-raw://01dc9ca228751a7ba99e72d88c8dd3bfcae6d9bb85180a9ea7efc0550e9237a0","dweb:/ipfs/QmPsEVXWZAZCKWuys3eqShSXCtHZCSc1bYQhHGDHuABYc6"],"license":"GPL-3.0"},"src/v07/IEntryPointSimulations.sol":{"keccak256":"0x49c6650bcbc4d4725aaa3aad66381c1c20b2a5d8b0249dcfa95fc65337d7f0ab","urls":["bzz-raw://2aaf93b6816132dd0e098dbbec2c5ae11f561df8b373645f5d266d2106af9b77","dweb:/ipfs/QmPMKdVZpub1sHSSXmSufmwC5ZfaL3v5GpcNU4QY6Hw6cN"],"license":"GPL-3.0"},"src/v07/PimlicoEntryPointSimulationsV7.sol":{"keccak256":"0x1c66f35a4a3e68de494e7b98319da78691c504d7b00dd178f0a97066d6e2e4c4","urls":["bzz-raw://6ca1adcab2d6f96a93039e3a8e79ba54f03af90ef04b8329778bd8a2ff0d8e22","dweb:/ipfs/QmZunE8jAxiA2E96Qe5gwiwp1usDu7hPWiXX2xPNnWNqoX"],"license":null}},"version":1},"id":21}
@@ -1 +0,0 @@
1
- {"abi":[{"type":"constructor","inputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"simulateEntryPoint","inputs":[{"name":"ep","type":"address","internalType":"address payable"},{"name":"data","type":"bytes[]","internalType":"bytes[]"}],"outputs":[{"name":"","type":"bytes[]","internalType":"bytes[]"}],"stateMutability":"nonpayable"},{"type":"event","name":"PimlicoSimulationV8Deployed","inputs":[],"anonymous":false}],"bytecode":{"object":"0x6080806040523460a257615bb18181016001600160401b03811183821017608e578291610427833903905ff080156083575f80546001600160a01b0319166001600160a01b0392909216919091178155604051907f0ac1632485823e92e5d9da7cd439a7aa48fa801afc8085b892e88171ef873ea09080a161038090816100a78239f35b6040513d5f823e3d90fd5b634e487b7160e01b5f52604160045260245ffd5b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c63c18f522614610024575f80fd5b346102ac5760403660031901126102ac5760043573ffffffffffffffffffffffffffffffffffffffff81168091036102ac5760243567ffffffffffffffff81116102ac57366023820112156102ac578060040135610081816102e6565b9161008f60405193846102c4565b8183526024602084019260051b820101903682116102ac5760248101925b82841061023557845185876100c1836102e6565b926100cf60405194856102c4565b8084526100de601f19916102e6565b015f5b8181106102245750505f5b82518110156101bd5760019060605f8061016973ffffffffffffffffffffffffffffffffffffffff825416610177610124878b610322565b5160405193849160208301947f850aaf6200000000000000000000000000000000000000000000000000000000865260248401526040604484015260648301906102fe565b03601f1981018452836102c4565b82885a935193f1156101a0575b61018e8287610322565b526101998186610322565b50016100ec565b503d604051906020818301016040528082525f602083013e610184565b836040518091602082016020835281518091526040830190602060408260051b8601019301915f905b8282106101f557505050500390f35b919360019193955060206102148192603f198a820301865288516102fe565b96019201920185949391926101e6565b8060606020809388010152016100e1565b833567ffffffffffffffff81116102ac578201366043820112156102ac5760248101359167ffffffffffffffff83116102b05760405161027f601f8501601f1916602001826102c4565b83815236604484860101116102ac575f6020858196604483970183860137830101528152019301926100ad565b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b90601f8019910116810190811067ffffffffffffffff8211176102b057604052565b67ffffffffffffffff81116102b05760051b60200190565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b80518210156103365760209160051b010190565b634e487b7160e01b5f52603260045260245ffdfea2646970667358221220dc84ea55f5ff02b00bb4b3a117c79a5f9e82daa595d84e3e75900bbfa21d87c364736f6c634300081c0033610180604052346101b8576040516100186040826101eb565b600781526020810190664552433433333760c81b82526040519161003d6040846101eb565b600183526020830191603160f81b83526100568161020e565b61012052610063846103a9565b61014052519020918260e05251902080610100524660a0526040519060208201927f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8452604083015260608201524660808201523060a082015260a081526100cc60c0826101eb565b5190206080523060c05230610160526040516100e7816101bc565b5f815260208101905f8252806020604051610101816101bc565b5f81520152600480546001600160a01b031916905551600555516006556040516156cf90816104e2823960805181613fd8015260a05181614095015260c05181613fa9015260e051816140270152610100518161404d015261012051816114c1015261014051816114ea015261016051818181613200015281816137ef0152818161384a01528181613a0f01528181613ac501528181613b1f01528181613c3301528181613ce901528181613d430152613e570152f35b5f80fd5b604081019081106001600160401b038211176101d757604052565b634e487b7160e01b5f52604160045260245ffd5b601f909101601f19168101906001600160401b038211908210176101d757604052565b908151602081105f14610288575090601f815111610248576020815191015160208210610239571790565b5f198260200360031b1b161790565b604460209160405192839163305a27a960e01b83528160048401528051918291826024860152018484015e5f828201840152601f01601f19168101030190fd5b6001600160401b0381116101d757600254600181811c9116801561039f575b602082101461038b57601f8111610358575b50602092601f82116001146102f757928192935f926102ec575b50508160011b915f199060031b1c19161760025560ff90565b015190505f806102d3565b601f1982169360025f52805f20915f5b8681106103405750836001959610610328575b505050811b0160025560ff90565b01515f1960f88460031b161c191690555f808061031a565b91926020600181928685015181550194019201610307565b60025f52601f60205f20910160051c810190601f830160051c015b81811061038057506102b9565b5f8155600101610373565b634e487b7160e01b5f52602260045260245ffd5b90607f16906102a7565b908151602081105f146103d4575090601f815111610248576020815191015160208210610239571790565b6001600160401b0381116101d757600354600181811c911680156104d7575b602082101461038b57601f81116104a4575b50602092601f821160011461044357928192935f92610438575b50508160011b915f199060031b1c19161760035560ff90565b015190505f8061041f565b601f1982169360035f52805f20915f5b86811061048c5750836001959610610474575b505050811b0160035560ff90565b01515f1960f88460031b161c191690555f8080610466565b91926020600181928685015181550194019201610453565b60035f52601f60205f20910160051c810190601f830160051c015b8181106104cc5750610405565b5f81556001016104bf565b90607f16906103f356fe60806040526004361015610022575b3615610018575f80fd5b6100206132f5565b005b5f3560e01c80630396cb601461021157806303d1dcaf1461020c57806309ccb880146102075780630bd28e3b146102025780630da82661146101fd5780630dbfc6bd146101f857806313c65a6e146101f3578063154e58dc146101ee5780631b2e01b8146101e9578063205c2878146101e457806321e60b37146101df57806322cdde4c146101da578063263934db146101d557806330ec25d1146101d057806335567e1a146101cb57806344403473146101c65780635287ce12146101c157806369683cfa146101bc57806370a08231146101b75780637472949c146101b257806376ad6123146101ad57806384b0196e146101a8578063850aaf62146101a357806397b2dcb91461019e578063b760faf914610199578063bb9fe6bf14610194578063c23a5cea1461018f578063c3bce0091461018a578063c579f76b14610185578063f7e426e8146101805763fe2171cb0361000e57611c43565b611c0a565b611aea565b611ab3565b611990565b61186d565b61184d565b6115fe565b6115c2565b6114a9565b611470565b611450565b611415565b611241565b611134565b6110ef565b611013565b610f96565b610e80565b610e57565b610c8e565b610a9c565b610a3f565b610a05565b6109e3565b610966565b6107b8565b6105ea565b6105a9565b610518565b60203660031901126104005760043563ffffffff811690818103610400576103fb7fa5ae833d0bb1dcd632d98a8b70973e8516812898e19bf27b70071ebc8dc52c01916103dd6102cf6102bf610277336001600160a01b03165f525f60205260405f2090565b96610283811515611c92565b6102b06001890154916102a96102a08463ffffffff9060781c1690565b63ffffffff1690565b1115611cdd565b60081c6001600160701b031690565b6001600160701b03349116611d59565b946102db861515611d66565b6102ee6001600160701b03871115611db1565b546102f76106ee565b908152600160208201526001600160701b038616604082015263ffffffff831660608201525f608082015261033c336001600160a01b03165f525f60205260405f2090565b81518155602082015160019091018054604084015160608501516080909501517fffffffffffffff0000000000000000000000000000000000000000000000000090921660ff941515949094169390931760089390931b6effffffffffffffffffffffffffff00169290921760789390931b72ffffffff000000000000000000000000000000169290921760989190911b65ffffffffffff60981b16179055565b6040805194855263ffffffff90911660208501523393918291820190565b0390a2005b5f80fd5b9181601f840112156104005782359167ffffffffffffffff8311610400576020808501948460051b01011161040057565b6001600160a01b0381160361040057565b359061045182610435565b565b60c06003198201126104005760043567ffffffffffffffff8111610400578161047e91600401610404565b929092916024359067ffffffffffffffff821161040057606090829003600319011261040057600401906044356104b481610435565b90606435906084359060a43590565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b60806040610515936020845280516020850152602081015115158285015201519160608082015201906104c3565b90565b346104005761059b61058f61057861052f36610453565b969194909561053f949394611dfc565b5061057261054b611e1b565b6105606105588780611e8a565b825190613394565b61056a8680611e8a565b905a91613482565b50613648565b61058a6105858280611e8a565b613704565b613796565b604051918291826104e7565b0390f35b5f91031261040057565b34610400575f3660031901126104005760206105c3611eab565b6001600160a01b0360405191168152f35b602435906001600160c01b038216820361040057565b34610400576020366003190112610400576004356001600160c01b03811681036104005761063490335f52600160205260405f20906001600160c01b03165f5260205260405f2090565b61063e8154611f25565b9055005b634e487b7160e01b5f52604160045260245ffd5b60a0810190811067ffffffffffffffff82111761067257604052565b610642565b6060810190811067ffffffffffffffff82111761067257604052565b610140810190811067ffffffffffffffff82111761067257604052565b6040810190811067ffffffffffffffff82111761067257604052565b90601f8019910116810190811067ffffffffffffffff82111761067257604052565b6040519061045160a0836106cc565b60405190610451610140836106cc565b60405190610451610100836106cc565b604051906104516040836106cc565b604051906104516060836106cc565b60405190610451610120836106cc565b67ffffffffffffffff811161067257601f01601f191660200190565b9291926107738261074b565b9161078160405193846106cc565b829481845281830111610400578281602093845f960137010152565b9080601f830112156104005781602061051593359101610767565b34610400576102203660031901126104005760043567ffffffffffffffff8111610400576107ea90369060040161079d565b3660231901906101c08212610400576101406040519261080984610656565b12610400576108166106fd565b6108206024610446565b815260443560208201526064356040820152608435606082015260a435608082015260c43560a082015260e43560c082015261085d610104610446565b60e0820152610124356101008201526101443561012082015282526101643560208301526101843560408301526101a43560608301526101c43560808301526101e4359067ffffffffffffffff8211610400576040926108c46108cf93369060040161079d565b906102043592611f33565b82519182526020820152f35b6020600319820112610400576004359067ffffffffffffffff82116104005761090691600401610404565b9091565b9061010060e061051593805184526020810151602085015260408101516040850152606081015160608501526080810151608085015260a081015160a085015260c0810151151560c08501520151918160e082015201906104c3565b346104005761097d610977366108db565b90612296565b6040518091602082016020835281518091526040830190602060408260051b8601019301915f905b8282106109b457505050500390f35b919360019193955060206109d38192603f198a8203018652885161090a565b96019201920185949391926109a5565b34610400575f3660031901126104005760206109fd613f9f565b604051908152f35b34610400575f3660031901126104005760206040517f29a0bca4af4be3421398da00295e58e6d7de38cb492214754cb6a47507dd6f8e8152f35b34610400576040366003190112610400576020610a93600435610a6181610435565b6001600160a01b03610a716105d4565b91165f526001835260405f20906001600160c01b03165f5260205260405f2090565b54604051908152f35b3461040057604036600319011261040057600435610ab981610435565b602435335f525f60205260405f2091825490818311610b3d575f8080856001600160a01b03829589610aee846100209a61245d565b9055604080516001600160a01b03831681526020810185905233917fd1c19fbcd4551a5edfb66d43d2e337c04837afda3482b42bdf569a8fccdae5fb91a2165af1610b3761246a565b50612499565b606460405162461bcd60e51b815260206004820152601960248201527f576974686472617720616d6f756e7420746f6f206c61726765000000000000006044820152fd5b90816101209103126104005790565b610200600319820112610400576004359160243567ffffffffffffffff81116104005782610bc091600401610b81565b916043190160446101c082126104005761014060405192610be084610656565b12610400576101a090610bf16106fd565b610bfa82610446565b81526020820135602082015260408201356040820152606082013560608201526080820135608082015260a082013560a082015260c082013560c0820152610c4460e08301610446565b60e082015261010082013561010082015261012082013561012082015283526101408101356020840152610160810135604084015261018081013560608401520135608082015290565b3461040057610c9c36610b90565b90915f91805193610cad8582613394565b610cb6816124e4565b60208301526001600160a01b0360e0610cf087610100604082015160608301510160808301510160a08301510160c0830151019101510290565b96876040860152015116610d1a575b604080515f8082526020820187905291810191909152606090f35b909192505a93610d398351916001600160a01b0360e084015116614acc565b15610de057906080610d5092015192839185615171565b9390505a900311610d68575061059b905f8080610cff565b60408051631101335b60e11b815260048101929092526024820152602760448201527f41413336206f766572207061796d6173746572566572696669636174696f6e4760648201527f61734c696d69740000000000000000000000000000000000000000000000000060848201528060a481015b0390fd5b60848460405190631101335b60e11b8252600482015260406024820152601e60448201527f41413331207061796d6173746572206465706f73697420746f6f206c6f7700006064820152fd5b6020600319820112610400576004359067ffffffffffffffff82116104005761051591600401610b81565b346104005760206109fd610e6a36610e2c565b6124e4565b90602061051592818152019061090a565b3461040057610eac610e91366108db565b809291610e9c6121a1565b50610ea6826121ef565b50612296565b5f198201918211610ed95761059b91610ec491612282565b5160405191829160208352602083019061090a565b611d28565b906105159060e06080610f30818651610140865280516101408701526020810151610160870152604081015161018087015260608101516101a0870152015160a06101c08601526101e08501906104c3565b60208087015180518683015201516040850152946040810151805160608601526020015160808501526060810151805160a08601526020015160c0850152015191019080516001600160a01b031682526020908101518051828401520151604090910152565b3461040057610fad610fa7366108db565b906126cb565b6040518091602082016020835281518091526040830190602060408260051b8601019301915f905b828210610fe457505050500390f35b919360019193955060206110038192603f198a82030186528851610ede565b9601920192018594939192610fd5565b3461040057604036600319011261040057602060043561103281610435565b6001600160a01b036110426105d4565b91165f52600182526110688160405f20906001600160c01b03165f5260205260405f2090565b546040805192901b67ffffffffffffffff1916178152f35b9181601f840112156104005782359167ffffffffffffffff8311610400576020838186019501011161040057565b906060600319830112610400576004356110c781610435565b916024359067ffffffffffffffff8211610400576110e791600401611080565b909160443590565b34610400575f8080611100366110ae565b939181604094929451948592833781018381520393f161111e61246a565b901561112657005b805190811561040057602001fd5b34610400576020366003190112610400576001600160a01b0360043561115981610435565b5f608060405161116881610656565b8281528260208201528260408201528260608201520152165f525f60205261059b60405f206111ed65ffffffffffff6001604051936111a685610656565b80548552015460ff8116151560208501526001600160701b038160081c16604085015263ffffffff8160781c16606085015260981c16608083019065ffffffffffff169052565b60405191829182919091608065ffffffffffff8160a0840195805185526020810151151560208601526001600160701b03604082015116604086015263ffffffff6060820151166060860152015116910152565b346104005761124f36610b90565b9190915a928151936112618583613394565b61126a826124e4565b60208401526040850151936112b66effffffffffffffffffffffffffffff8660c08901511760608901511760808901511760a0890151176101008901511761012089015117111561275d565b6112e186610100604082015160608301510160808301510160a08301510160c0830151019101510290565b946113166113126112f55a89898988613565565b98602061130982516001600160a01b031690565b9101519061420a565b1590565b6113c0575a8303116113735750926113579260806113529360a061135e975a9560408601526060808601525a9003910135019101525a9061245d565b6127a9565b6064900490565b604080519283525f6020840152820152606090f35b60408051631101335b60e11b815260048101929092526024820152601e60448201527f41413236206f76657220766572696669636174696f6e4761734c696d697400006064820152608490fd5b610ddc82604051918291631101335b60e11b835260048301608091815260406020820152601a60408201527f4141323520696e76616c6964206163636f756e74206e6f6e636500000000000060608201520190565b34610400576020366003190112610400576001600160a01b0360043561143a81610435565b165f525f602052602060405f2054604051908152f35b346104005761059b61058f61146436610453565b95949094939193612816565b346104005761059b61058f61149761148736610453565b9691949095610572949394611dfc565b6114a46105858280611e8a565b613a8a565b34610400575f366003190112610400576115696114e57f00000000000000000000000000000000000000000000000000000000000000006153ac565b61150e7f0000000000000000000000000000000000000000000000000000000000000000615492565b602060405161151d82826106cc565b5f81528161157781830194601f1983013687376040519788977f0f00000000000000000000000000000000000000000000000000000000000000895260e0858a015260e08901906104c3565b9087820360408901526104c3565b914660608701523060808701525f60a087015285830360c087015251918281520192915f5b8281106115ab57505050500390f35b83518552869550938101939281019260010161159c565b34610400576040366003190112610400576115de600435610435565b60243567ffffffffffffffff811161040057610020903690600401611080565b346104005760603660031901126104005760043567ffffffffffffffff81116104005761162f903690600401610b81565b6024359061163c82610435565b60443567ffffffffffffffff81116104005761165c90369060040161079d565b906116656121a1565b507f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f005c6118255761059b9260017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f005d6116bc611e1b565b926116c683613704565b6116d08484612d98565b9091945a6060880151886116e76060850185612a8f565b5f6003821161181d575b7fffffffff0000000000000000000000000000000000000000000000000000000016638dd7712f60e01b0361180457505061175561176961176e956020840151604051938492638dd7712f60e01b60208501526040602485015260648401906142af565b90604483015203601f1981018352826106cc565b611f33565b9290965b5f946060966001600160a01b0381166117d9575b50509560806117c0969701519761179b61070d565b988952602089015260408801526060870152608086015260a0850152151560c0840152565b60e08201526117cd614258565b60405191829182610e6f565b6117c097505f92965090829182602083519301915af19560806117fa61246a565b9795919796611786565b611815955090611769913691610767565b929096611772565b5081356116f1565b7f3ee5aeb5000000000000000000000000000000000000000000000000000000005f5260045ffd5b60203660031901126104005761002060043561186881610435565b6128a1565b34610400575f36600319011261040057335f525f602052600160405f2001805463ffffffff8160781c161561194c576118d56118c76102a0836118bb6118b661190f9660ff1690565b6128fa565b60781c63ffffffff1690565b65ffffffffffff4216612945565b82547fffffffffffffff000000000000ffffffffffffffffffffffffffffffffffff001665ffffffffffff60981b609883901b1617909255565b60405165ffffffffffff909116815233907ffa9b3c14cc825c412c9ed81b3ba365a5b459439403f18829e572ed53a4180f0a9080602081016103fb565b606460405162461bcd60e51b815260206004820152600a60248201527f6e6f74207374616b6564000000000000000000000000000000000000000000006044820152fd5b34610400576020366003190112610400576100205f8080806004356119b481610435565b6001600160a01b0360016119d8336001600160a01b03165f525f60205260405f2090565b0191611a66835493611a3e65ffffffffffff611a2a611a10611a04896001600160701b039060081c1690565b6001600160701b031690565b97611a1c891515612963565b60981c65ffffffffffff1690565b16611a368115156129ae565b4210156129f9565b80547fffffffffffffff000000000000000000000000000000000000000000000000ff169055565b604080516001600160a01b03831681526020810185905233917fb7c918e0e249f999e965cafeb6c664271b3f4317d296461500e71da39f0cbda391a2165af1611aad61246a565b50612a44565b346104005761059b611acc611ac736610e2c565b612b84565b604051918291602083526020830190610ede565b8015150361040057565b34610400576102203660031901126104005760043560243567ffffffffffffffff811161040057611b1f903690600401610b81565b3660431901916101c083126104005761014060405193611b3e85610656565b126104005761059b92611bed92611b536106fd565b611b5d6044610446565b81526064356020820152608435604082015260a435606082015260c435608082015260e43560a08201526101043560c0820152611b9b610124610446565b60e0820152610144356101008201526101643561012082015282526101843560208301526101a43560408301526101c43560608301526101e43560808301526102043592611be884611ae0565b612f73565b604080519384526020840192909252908201529081906060820190565b3461040057611c24611c1b366110ae565b929190916131ab565b9061059b604051928392151583526040602084015260408301906104c3565b3461040057611c65611c54366108db565b809291611c5f612649565b506126cb565b5f198201918211610ed95761059b91611c7d91612282565b51604051918291602083526020830190610ede565b15611c9957565b606460405162461bcd60e51b815260206004820152601a60248201527f6d757374207370656369667920756e7374616b652064656c61790000000000006044820152fd5b15611ce457565b606460405162461bcd60e51b815260206004820152601c60248201527f63616e6e6f7420646563726561736520756e7374616b652074696d65000000006044820152fd5b634e487b7160e01b5f52601160045260245ffd5b906113888201809211610ed957565b9060018201809211610ed957565b91908201809211610ed957565b15611d6d57565b606460405162461bcd60e51b815260206004820152601260248201527f6e6f207374616b652073706563696669656400000000000000000000000000006044820152fd5b15611db857565b606460405162461bcd60e51b815260206004820152600e60248201527f7374616b65206f766572666c6f770000000000000000000000000000000000006044820152fd5b60405190611e0982610677565b60606040835f81525f60208201520152565b60405190611e2882610656565b5f608083604051611e3881610693565b83815283602082015283604082015283606082015283838201528360a08201528360c08201528360e0820152836101008201528361012082015281528260208201528260408201528260608201520152565b90359061011e1981360301821215610400570190565b6040513d5f823e3d90fd5b6040517f09ccb880000000000000000000000000000000000000000000000000000000008152602081600481305afa908115611f20575f91611eeb575090565b90506020813d602011611f18575b81611f06602093836106cc565b81010312610400575161051581610435565b3d9150611ef9565b611ea0565b5f198114610ed95760010190565b9392909193825190606082015181519081612120575b505050505a9003608082015101925f935a91835191611f67836150e7565b92611f7c60e08201516001600160a01b031690565b91611f9260808801518203606084015190615107565b01925f926001600160a01b03811690816120375750505090611fbf6040949392516001600160a01b031690565b945b5a9003010102920151908282105f1461200557611fdd5f613f13565b7fdeadaa51000000000000000000000000000000000000000000000000000000005f5260205ffd5b826120299203906001600160a01b03165f525f60205260405f209081540180915590565b506120335f613f13565b9190565b9692825161204e575b505050906040939291611fc1565b919950949392505a986120605f613f13565b60a05a920195865191813b15610400578692835f8094896120b3604051988997889687947f7c627b2100000000000000000000000000000000000000000000000000000000865202908660048601613f22565b0393f19081612106575b506120e657610ddc6120cd613ed2565b6040519182916365c8fd4d60e01b835260048301613f54565b6040946120fc915a9003995a9003905190615107565b9192935f80612040565b806121145f61211a936106cc565b8061059f565b5f6120bd565b5f80949360206001600160a01b0383965116910192f115612144575f808080611f49565b610ddc61214f613ed2565b6040519182917f462c71b20000000000000000000000000000000000000000000000000000000083526020600484015260248301906104c3565b67ffffffffffffffff81116106725760051b60200190565b60405190610100820182811067ffffffffffffffff82111761067257604052606060e0835f81525f60208201525f60408201525f838201525f60808201525f60a08201525f60c08201520152565b906121f982612189565b61220660405191826106cc565b8281528092612217601f1991612189565b01905f5b82811061222757505050565b6020906122326121a1565b8282850101520161221b565b634e487b7160e01b5f52603260045260245ffd5b90821015612269576105159160051b810190611e8a565b61223e565b6040519061227d6020836106cc565b5f8252565b80518210156122695760209160051b010190565b61229f826121ef565b915f5b8181106122af5750505090565b6122ba818385612252565b9060205f6040516122cb83826106cc565b526122d46121a1565b507f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f005c61182557600192837f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f005d612329611e1b565b9061233381613704565b8261233e8383612d98565b929091935a90866060810151916123586060820182612a8f565b5f60038211612438575b7fffffffff0000000000000000000000000000000000000000000000000000000016638dd7712f60e01b0361242057505061176985638dd7712f60e01b926117556123c598860151916040519586948501526040602485015260648401906142af565b93905b60806060960151966123d861070d565b978852870152604086015283850152608084015260a08301525f60c083015260e0820152612404614258565b61240e8287612282565b526124198186612282565b50016122a2565b612431965061176992503691610767565b93906123c8565b508135612362565b600319810191908211610ed957565b5f19810191908211610ed957565b91908203918211610ed957565b3d15612494573d9061247b8261074b565b9161248960405193846106cc565b82523d5f602084013e565b606090565b156124a057565b606460405162461bcd60e51b815260206004820152601260248201527f6661696c656420746f20776974686472617700000000000000000000000000006044820152fd5b610515906124f181614177565b6124f9613f9f565b916125d581359261250984610435565b6020830135908015612611576125c790935b61253161252b6060830183612a8f565b90615637565b90608081013560a08201359061255361252b60c08501359460e0810190612a8f565b93604051988997602089019b8c94919261010096939998979491996001600160a01b0361012088019b7f29a0bca4af4be3421398da00295e58e6d7de38cb492214754cb6a47507dd6f8e895216602088015260408701526060860152608085015260a084015260c083015260e08201520152565b03601f1981018352826106cc565b51902090604291604051917f19010000000000000000000000000000000000000000000000000000000000008352600283015260228201522090565b506125c76126226040850185612a8f565b9081604051918237209361251b565b6040519061263e826106b0565b5f6020838281520152565b6040519061265682610656565b8160405161266381610656565b5f81525f60208201525f60408201525f6060820152606060808201528152612689612631565b6020820152612696612631565b60408201526126a3612631565b60608201526080604051916126b7836106b0565b5f83526126c2612631565b60208401520152565b6126d482612189565b916126e260405193846106cc565b808352601f196126f182612189565b015f5b8181106127395750505f5b81811061270c5750505090565b8061271d611ac76001938587612252565b6127278287612282565b526127328186612282565b50016126ff565b602090612744612649565b828288010152016126f4565b908092918237015f815290565b1561276457565b60405162461bcd60e51b815260206004820152601860248201527f41413934206761732076616c756573206f766572666c6f7700000000000000006044820152606490fd5b90607382029180830460731490151715610ed957565b3561051581610435565b604051906127d86020836106cc565b5f808352366020840137565b906127ee8261074b565b6127fb60405191826106cc565b828152809261280c601f199161074b565b0190602036910137565b9061282991969594939296610572611dfc565b6001600160a01b0361283b8680611e8a565b61286460208801359161284d83610435565b612855611e1b565b9061285f81613704565b612d98565b50505016156128765761051594613cae565b50505050506128836127c9565b6040519061289082610677565b5f82525f6020830152604082015290565b7f2da466a7b24304f47e87fa2e1e5a81b9831ce54fec19055ce277ca2f39ba42c460206001600160a01b036128ee34856001600160a01b03165f525f60205260405f209081540180915590565b936040519485521692a2565b1561290157565b606460405162461bcd60e51b815260206004820152601160248201527f616c726561647920756e7374616b696e670000000000000000000000000000006044820152fd5b9065ffffffffffff8091169116019065ffffffffffff8211610ed957565b1561296a57565b606460405162461bcd60e51b815260206004820152601460248201527f4e6f207374616b6520746f2077697468647261770000000000000000000000006044820152fd5b156129b557565b606460405162461bcd60e51b815260206004820152601d60248201527f6d7573742063616c6c20756e6c6f636b5374616b6528292066697273740000006044820152fd5b15612a0057565b606460405162461bcd60e51b815260206004820152601b60248201527f5374616b65207769746864726177616c206973206e6f742064756500000000006044820152fd5b15612a4b57565b606460405162461bcd60e51b815260206004820152601860248201527f6661696c656420746f207769746864726177207374616b6500000000000000006044820152fd5b903590601e1981360301821215610400570180359067ffffffffffffffff82116104005760200191813603831361040057565b906014116104005790601490565b909291928360141161040057831161040057601401916013190190565b909291928360341161040057831161040057603401916033190190565b356bffffffffffffffffffffffff19811692919060148210612b2a575050565b6bffffffffffffffffffffffff1960149290920360031b82901b16169150565b60405190612b57826106b0565b6004546001600160a01b03168252604051602083612b74836106b0565b6005548352600654828401520152565b612b8c612649565b50612b95611e1b565b90612b9f81613704565b612ba98282612d98565b50919092612bb78385614372565b612bd4612bcf60e0835101516001600160a01b031690565b61451c565b91612c02612bee612bcf84516001600160a01b0390511690565b91612bf7612631565b506040810190612a8f565b9060148210612cdd57612c24612c1e612c2a93612bcf93612ac2565b90612b0a565b60601c90565b916001600160a01b038616946080820151966060604084015193015192612c4f6106ee565b9889526020890152604088015260608701526080860152612c6e612b4a565b9380151580612cd2575b612ca0575b50612c866106ee565b948552602085015260408401526060830152608082015290565b909350612cac8161451c565b612cc6612cb761071d565b6001600160a01b039093168352565b6020820152925f612c7d565b506001811415612c78565b5050612c2a5f61451c565b15612cf05750565b60405190631101335b60e11b825260048201526040602482015280610ddc60448201604090601881527f41413934206761732076616c756573206f766572666c6f77000000000000000060208201520190565b15612d4b5750565b60408051631101335b60e11b815260048101929092526024820152601a60448201527f4141323520696e76616c6964206163636f756e74206e6f6e63650000000000006064820152608490fd5b9190915f915a93805192612dac8482613394565b612dc5604051612dbb836124e4565b6020850152604052565b604084015195612e0d5f6effffffffffffffffffffffffffffff8960c08901511760608901511760808901511760a08901511761010089015117610120890151171115612ce8565b612e58612e3b86610100604082015160608301510160808301510160a08301510160c0830151019101510290565b806040860152612e4f608085013560801c90565b9085855f613565565b96612e815f612e7c612e7189516001600160a01b031690565b60208a01519061420a565b612d43565b5a820311612f20576060946001600160a01b03612ea960e05a9301516001600160a01b031690565b16151580612f18575b612ee0575b60809291612ece61135761135260a0945a9061245d565b9660608601525a900391013501910152565b945061135295509060a0608092612ef68361455c565b50612ece611357612f0887865f6140bb565b9a90999450505050919250612eb7565b506001612eb2565b604051631101335b60e11b815280610ddc5f60048301608091815260406020820152601e60408201527f41413236206f76657220766572696669636174696f6e4761734c696d6974000060608201520190565b939092915f935a8251612f868184613394565b612f9f604051612f95856124e4565b6020870152604052565b604081015197612fe7816effffffffffffffffffffffffffffff8b60c08601511760608601511760808601511760a08601511761010086015117610120860151171115612ce8565b61303261301583610100604082015160608301510160808301510160a08301510160c0830151019101510290565b806040880152613029608087013560801c90565b90878785613565565b9861305682612e7c61304b86516001600160a01b031690565b60208701519061420a565b5a840311611373576060966001600160a01b0361307e60e05a9501516001600160a01b031690565b16151590816130de575b506130a6575b5060809291612ece61135761135260a0945a9061245d565b611352975060a091965091612ece6113576130cf878780976130c960809a61455c565b506140bb565b9a90999450505050919261308e565b90505f613088565b908060209392818452848401375f828201840152601f01601f1916010190565b6040906001600160a01b03610515959316815281602082015201916130e6565b908151811015612269570160200190565b919060408382031261040057825161314e81611ae0565b9260208101519067ffffffffffffffff8211610400570181601f820112156104005780519061317c8261074b565b9261318a60405194856106cc565b8284526020838301011161040057815f9260208093018386015e8301015290565b91925f936001600160a01b036060941691823b1561040057613229935f80946040518097819682957f850aaf620000000000000000000000000000000000000000000000000000000084526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001660048501613106565b0393f190816132e1575b5061090657505061324261246a565b9060048251106132d35761325e6132598351612440565b6127e4565b60045b83518110156132bd57806132a061327a60019387613126565b517fff000000000000000000000000000000000000000000000000000000000000001690565b6132b66132ac83612440565b915f1a9185613126565b5301613261565b5061090691925060208082518301019101613137565b90506132dd6127c9565b5f91565b806121145f6132ef936106cc565b5f613233565b610451336128a1565b1561330557565b606460405162461bcd60e51b815260206004820152601d60248201527f4141393320696e76616c6964207061796d6173746572416e64446174610000006044820152fd5b1561335057565b606460405162461bcd60e51b815260206004820152601660248201527f4141393820696e76616c6964207061796d6173746572000000000000000000006044820152fd5b61342b906133b16133a4826127bf565b6001600160a01b03168452565b602081013560208401526133de6080820135906fffffffffffffffffffffffffffffffff8260801c921690565b6060850152604084015260a081013560c084015261341560c0820135906fffffffffffffffffffffffffffffffff8260801c921690565b61010085015261012084015260e0810190612a8f565b8092919261343857505050565b613454816104519461344f603460e09510156132fe565b61457b565b60a08501526080840152916134736001600160a01b0384161515613349565b01906001600160a01b03169052565b92916134c6908251926001600160a01b0360e081865116956134b26134aa60408b018b612a8f565b90865f6145d9565b015116905f91159687613532575b5f6149c5565b926134ce5750565b5f6134d891614acc565b156134df57565b604051631101335b60e11b815280610ddc5f60048301608091815260406020820152601760408201527f41413231206469646e2774207061792070726566756e6400000000000000000060608201520190565b915061354e856001600160a01b03165f525f60205260405f2090565b54801561355e57505f5b916134c0565b5f03613558565b929094936135ab908351936001600160a01b0360e0818751169661359761358f60408d018d612a8f565b90868c6145d9565b015116905f91159889613613575b876149c5565b946135b557505050565b6135be91614acc565b156135c65750565b60408051631101335b60e11b815260048101929092526024820152601760448201527f41413231206469646e2774207061792070726566756e640000000000000000006064820152608490fd5b915061362f866001600160a01b03165f525f60205260405f2090565b548581111561364157505f5b916135a5565b850361363b565b915f5b828110156136fe5761365b611e1b565b908060051b85013591605e1986360301831215610400576136926001938701916136886105858480611e8a565b61285f8380611e8a565b505050602081016136b16136a5826127bf565b6001600160a01b031690565b156136f7575f91826136d16136c682946127bf565b926040810190612a8f565b91906136e260405180948193612750565b03925af1506136ef61246a565b505b0161364b565b50506136f1565b50915050565b613737906137156040820182612a8f565b9161372f81359161372583610435565b60e0810190612a8f565b939092614af1565b80516137405750565b610ddc90604051918291631101335b60e11b83525f60048401526040602484015260448301906104c3565b939291613791906001600160a01b036040931686526060602087015260608601906104c3565b930152565b939490946137a2611dfc565b5082156139ed576137e2926137b561226e565b50915f6137c45a886002614e86565b5a906040519687928392631efc84dd60e31b84528c6004850161376b565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1918215611f20575f945f936139cb575b508294809381156139a957505061383f909592919394955b85611d59565b806001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016965b84613877888561245d565b1061397f575a61388688611d3c565b116139485791869593918995935f8c8b6138b86138af6138a9886138d89f611d59565b60011c90565b809b6002614e86565b835a936040519e8f9586948593631efc84dd60e31b85526004850161376b565b03925af1988915611f20575f905f9a613921575b501561390c575050506138fe8461244f565b95915b93909294959161386c565b9396509461391b919750611d4b565b94613901565b90506139409199503d805f833e61393881836106cc565b810190613137565b98905f6138ec565b7fe2c4d0be000000000000000000000000000000000000000000000000000000005f5260048290526024879052604483905260645ffd5b9650965050919550506139a1915061399561072c565b93845215156020840152565b604082015290565b965096505095505050506139a16139be61072c565b5f81529215156020840152565b9092506139e39194503d805f833e61393881836106cc565b939093915f613821565b90613a0292505a905f6137c45a886002614e86565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1928315611f20575f945f94613a68575b508394613a5081945a9061245d565b9481156139a957505061383f90959291939495613839565b909350613a809194503d805f833e61393881836106cc565b939093925f613a41565b93949094613a96611dfc565b508215613c1157613ab892613aa961226e565b50915f6137c45a886003614e86565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1918215611f20575f945f93613bef575b508294809381156139a9575050613b149095929193949585611d59565b806001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016965b84613b4c888561245d565b1061397f575a613b5b88611d3c565b116139485791869593918995935f8c8b6138b8613b7e6138a988613b879f611d59565b809b6003614e86565b03925af1988915611f20575f905f9a613bd0575b5015613bbb57505050613bad8461244f565b95915b939092949591613b41565b93965094613bca919750611d4b565b94613bb0565b9050613be79199503d805f833e61393881836106cc565b98905f613b9b565b909250613c079194503d805f833e61393881836106cc565b939093915f613af7565b90613c2692505a905f6137c45a886003614e86565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1928315611f20575f945f94613c8c575b508394613c7481945a9061245d565b9481156139a9575050613b1490959291939495613839565b909350613ca49194503d805f833e61393881836106cc565b939093925f613c65565b93949094613cba611dfc565b508215613e3557613cdc92613ccd61226e565b50915f6137c45a886001614e86565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1918215611f20575f945f93613e13575b508294809381156139a9575050613d389095929193949585611d59565b806001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016965b84613d70888561245d565b1061397f575a613d7f88611d3c565b116139485791869593918995935f8c8b6138b8613da26138a988613dab9f611d59565b809b6001614e86565b03925af1988915611f20575f905f9a613df4575b5015613ddf57505050613dd18461244f565b95915b939092949591613d65565b93965094613dee919750611d4b565b94613dd4565b9050613e0b9199503d805f833e61393881836106cc565b98905f613dbf565b909250613e2b9194503d805f833e61393881836106cc565b939093915f613d1b565b90613e4a92505a905f6137c45a886001614e86565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1928315611f20575f945f94613eb0575b508394613e9881945a9061245d565b9481156139a9575050613d3890959291939495613839565b909350613ec89194503d805f833e61393881836106cc565b939093925f613e89565b3d6108008111613ef6575b604051906020818301016040528082525f602083013e90565b50610800613edd565b634e487b7160e01b5f52602160045260245ffd5b60031115613f1d57565b613eff565b90949392946003811015613f1d57606092613f4a9183526080602084015260808301906104c3565b9460408201520152565b9060a0610515925f815260606020820152601460608201527f4141353020706f73744f70207265766572746564000000000000000000000000608082015281604082015201906104c3565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016301480614092575b15613ffa577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a0815261408c60c0826106cc565b51902090565b507f00000000000000000000000000000000000000000000000000000000000000004614613fd1565b9290925a9383516140de6001600160a01b0360e083015116604087015190614acc565b15614103579060806140f592015194859184615171565b9390945a900311610d685750565b60848360405190631101335b60e11b8252600482015260406024820152601e60448201527f41413331207061796d6173746572206465706f73697420746f6f206c6f7700006064820152fd5b909280926014946bffffffffffffffffffffffff199060601b1683528483013701015f815290565b6141846040820182612a8f565b90916141936113128385615266565b614203576141a36141a8916127bf565b6152a8565b91601482116141df57505060405161408c816125c76020820194856014916bffffffffffffffffffffffff199060601b1681520190565b8161408c926141ed92612ad0565b91906125c760405193849260208401968761414f565b5050505f90565b6001600160a01b03165f52600160205267ffffffffffffffff6142448260401c60405f20906001600160c01b03165f5260205260405f2090565b9182549261425184611f25565b9055161490565b5f7f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f005d565b9035601e198236030181121561040057016020813591019167ffffffffffffffff821161040057813603831361040057565b610515916142cd816142c084610446565b6001600160a01b03169052565b6020820135602082015261436361435761431e6143036142f0604087018761427d565b61012060408801526101208701916130e6565b614310606087018761427d565b9086830360608801526130e6565b6080850135608085015260a085013560a085015260c085013560c085015261434960e086018661427d565b9085830360e08701526130e6565b9261010081019061427d565b916101008185039101526130e6565b6143836001600160a01b039161554a565b91166144c9576144765761439e6001600160a01b039161554a565b9116614423576143aa57565b604051631101335b60e11b815280610ddc5f6004830160a091815260406020820152602160408201527f41413332207061796d61737465722065787069726564206f72206e6f7420647560608201527f650000000000000000000000000000000000000000000000000000000000000060808201520190565b604051631101335b60e11b815280610ddc5f60048301608091815260406020820152601460408201527f41413334207369676e6174757265206572726f7200000000000000000000000060608201520190565b604051631101335b60e11b815280610ddc5f60048301608091815260406020820152601760408201527f414132322065787069726564206f72206e6f742064756500000000000000000060608201520190565b604051631101335b60e11b815280610ddc5f60048301608091815260406020820152601460408201527f41413234207369676e6174757265206572726f7200000000000000000000000060608201520190565b906001600160a01b0361452d612631565b92165f525f60205263ffffffff600160405f2001546001600160701b038160081c16845260781c166020830152565b61456a9060e0810190612a8f565b602411610400576014013560801c90565b9091826014116104005781359183602411610400576014810135936034116104005760609290921c92608090811c9260240135901c90565b90816020910312610400575161051581610435565b9160206105159381815201916130e6565b929091816145e8575b50505050565b8251516001600160a01b0316936145ff8383615266565b6148bc57843b61486f5760148310614822575f602061461f6136a5611eab565b604087510151604051809481937f570e1a360000000000000000000000000000000000000000000000000000000083528261465e8b8b600484016145c8565b0393f1908115611f20575f916147f3575b506001600160a01b03811695861561479e576001600160a01b0316809603614749573b156146fc5750612c24612c1e7fd51a9c61267aa6196961883ecf5ff2da6619c37dac0fa92122513fb32c032d2d936146c993612ac2565b602083810151935160e00151604080516001600160a01b039485168152939091169183019190915290a35f8080806145e2565b60408051631101335b60e11b815260048101929092526024820152602060448201527f4141313520696e6974436f6465206d757374206372656174652073656e6465726064820152608490fd5b610ddc82604051918291631101335b60e11b835260048301608091815260406020820152602060408201527f4141313420696e6974436f6465206d7573742072657475726e2073656e64657260608201520190565b610ddc83604051918291631101335b60e11b835260048301608091815260406020820152601b60408201527f4141313320696e6974436f6465206661696c6564206f72204f4f47000000000060608201520190565b614815915060203d60201161481b575b61480d81836106cc565b8101906145b3565b5f61466f565b503d614803565b60408051631101335b60e11b815260048101929092526024820152601760448201527f4141393920696e6974436f646520746f6f20736d616c6c0000000000000000006064820152608490fd5b60408051631101335b60e11b815260048101929092526024820152601f60448201527f414131302073656e64657220616c726561647920636f6e7374727563746564006064820152608490fd5b5090601481116148cc5750505050565b806148e89160406148de6136a5611eab565b9551015193612ad0565b9190833b15610400575f809461492e96604051978896879586937fc09ad0d900000000000000000000000000000000000000000000000000000000855260048501613106565b0393f18015611f2057614944575b8080806145e2565b806121145f614952936106cc565b5f61493c565b614970604092959493956060835260608301906142af565b9460208201520152565b60a0906105159392815260606020820152600d60608201527f4141323320726576657274656400000000000000000000000000000000000000608082015281604082015201906104c3565b9291602095948692614a2f5f93614a216149e882516001600160a01b0390511690565b976040519b8c930151888401957f19822f7c00000000000000000000000000000000000000000000000000000000875260248501614958565b03601f1981018a52896106cc565b8285895193f15f519460203d03614ac4575b60405215614a4d575050565b3b614a9f5760408051631101335b60e11b815260048101929092526024820152601960448201527f41413230206163636f756e74206e6f74206465706c6f796564000000000000006064820152608490fd5b614aa7613ed2565b90610ddc6040519283926365c8fd4d60e01b84526004840161497a565b5f9150614a41565b6001600160a01b03165f525f60205260405f2090815481811061420357039055600190565b50929192159081614ba6575b50614b69576014811015614b16575b505061051561226e565b601411610400573560601c3b15614b2e575f80614b0c565b604051614b3c6040826106cc565b601b81527f41413330207061796d6173746572206e6f74206465706c6f7965640000000000602082015290565b5050604051614b796040826106cc565b601981527f41413230206163636f756e74206e6f74206465706c6f79656400000000000000602082015290565b90503b155f614afd565b6101208136031261040057614bc361073b565b90614bcd81610446565b825260208101356020830152604081013567ffffffffffffffff811161040057614bfa903690830161079d565b6040830152606081013567ffffffffffffffff811161040057614c20903690830161079d565b60608301526080810135608083015260a081013560a083015260c081013560c083015260e081013567ffffffffffffffff811161040057614c64903690830161079d565b60e08301526101008101359067ffffffffffffffff821161040057614c8b9136910161079d565b61010082015290565b60041115613f1d57565b916020936fffffffffffffffffffffffffffffffff198092603497946bffffffffffffffffffffffff199060601b1686521660148501521660248301528051928391018483015e01015f815290565b80516001600160a01b031682526105159160208201516020820152610100614d6e614d3e614d2c604086015161012060408701526101208601906104c3565b606086015185820360608701526104c3565b6080850151608085015260a085015160a085015260c085015160c085015260e085015184820360e08601526104c3565b920151906101008184039101526104c3565b60806101a0916101208151614d9e8682516001600160a01b03169052565b602081015160208701526040810151604087015260608101516060870152838101518487015260a081015160a087015260c081015160c0870152614df260e082015160e08801906001600160a01b03169052565b61010081015161010087015201516101208501526020810151610140850152604081015161016085015260608101516101808501520151910152565b614e5d614e5261020093969594965f84526102206020850152610220840190614ced565b956040830190614d80565b0152565b61020090614e5d614e525f949695968584526102206020850152610220840190614ced565b614e8e611e1b565b614ea0614e9b8480611e8a565b614bb0565b614ea983614c94565b6002831461500257614eba83614c94565b60038314614f7b57505080614ed0600192614c94565b14614f1a5760405162461bcd60e51b815260206004820152600c60248201527f496e76616c6964206d6f646500000000000000000000000000000000000000006044820152606490fd5b806125c7614f45614f3e614f33602061051596016127bf565b936040810190612a8f565b3691610767565b936040519485937f444034730000000000000000000000000000000000000000000000000000000060208601526024850161376b565b9150926fffffffffffffffffffffffffffffffff614fc2614fbb614fa28661051597611e8a565b608001356fffffffffffffffffffffffffffffffff1690565b9260801b90565b91161760808201526125c76040519384927fc579f76b00000000000000000000000000000000000000000000000000000000602085015260248401614e61565b9150926125c7906fffffffffffffffffffffffffffffffff198461508d61507f61503b615035613725856105159b611e8a565b9061457b565b9291905060609060e08a01956034875151116150c3575b5060405196879460801b16906fffffffffffffffffffffffffffffffff198960801b169060208601614c9e565b03601f1981018452836106cc565b526040519485937f21e60b3700000000000000000000000000000000000000000000000000000000602086015260248501614e2e565b6150e09192506150d961372582614f3e93611e8a565b8091612aed565b905f615052565b61012061010082015191015148018082105f14615102575090565b905090565b90619c40820181111561512057606491600a9103020490565b50505f90565b60a0906105159392815260606020820152600d60608201527f4141333320726576657274656400000000000000000000000000000000000000608082015281604082015201906104c3565b925f80919593929560405196826151e660e06020880151976151d78c6151c86040840151602083019c8d997f52b7512c000000000000000000000000000000000000000000000000000000008b5260248501614958565b038d601f19820190528d6106cc565b5101516001600160a01b031690565b895193f1933d91825f833e5193815160408301968751901591821561525a575b508115615248575b506152235750601f909101601f191601604052565b61522b613ed2565b90610ddc6040519283926365c8fd4d60e01b845260048401615126565b9050601f605f1985019101105f61520e565b6040141591505f615206565b906002116152a357356bffffffffffffffffffffffff19167f77020000000000000000000000000000000000000000000000000000000000001490565b505f90565b60175f80833c5f51907fef010000000000000000000000000000000000000000000000000000000000007fffffff000000000000000000000000000000000000000000000000000000000083160361531d5750612c2461530b6105159260181b90565b6bffffffffffffffffffffffff191690565b3b156153685760405162461bcd60e51b815260206004820152601860248201527f6e6f7420616e204549502d373730322064656c656761746500000000000000006044820152606490fd5b606460405162461bcd60e51b815260206004820152601260248201527f73656e64657220686173206e6f20636f646500000000000000000000000000006044820152fd5b60ff81146153bd5761051590615642565b506040515f6002548060011c91600182168015615488575b602084108114615474578385528492602084019190811561545b5750600114615406575b50610515925003826106cc565b60025f90815291507f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace5b84831061544457506105159350015f6153f9565b805482840152859350602090920191600101615430565b60ff191682525061051593151560051b0190505f6153f9565b634e487b7160e01b5f52602260045260245ffd5b92607f16926153d5565b60ff81146154a35761051590615642565b506040515f6003548060011c91600182168015615540575b602084108114615474578385528492602084019190811561545b57506001146154eb5750610515925003826106cc565b60035f90815291507fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b84831061552957506105159350015f6153f9565b805482840152859350602090920191600101615515565b92607f16926154bb565b8015615630575f6040805161555e81610677565b828152826020820152015265ffffffffffff8160a01c168015615623575b615604906155eb61559361559e6155938660d01c90565b65ffffffffffff1690565b926155c36001600160a01b036155b261072c565b971687906001600160a01b03169052565b6155d96020870194859065ffffffffffff169052565b65ffffffffffff166040860181905290565b4211908115615607575b5091516001600160a01b031690565b91565b5161561a915065ffffffffffff16615593565b4211155f6155f5565b5065ffffffffffff61557c565b505f905f90565b816040519182372090565b60ff811690601f8211615671576040519161565e6040846106cc565b6020808452838101919036833783525290565b7fb3512b0c000000000000000000000000000000000000000000000000000000005f5260045ffdfea2646970667358221220c3d99b3d2df7b47f9c873c088c44c42ab0cbffbcd1c4c2f71c607b417bd02cdf64736f6c634300081c0033","sourceMap":"113:1074:31:-:0;;;;;;;238:27;;;;-1:-1:-1;;;;;238:27:31;;;;;;;;;;;;;;;;;;;;;;113:1074;;-1:-1:-1;;;;;;113:1074:31;-1:-1:-1;;;;;113:1074:31;;;;;;;;;;;;;517:29;;238:27;517:29;113:1074;;;;;;;238:27;113:1074;;;238:27;113:1074;;;;;238:27;113:1074;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60806040526004361015610011575f80fd5b5f3560e01c63c18f522614610024575f80fd5b346102ac5760403660031901126102ac5760043573ffffffffffffffffffffffffffffffffffffffff81168091036102ac5760243567ffffffffffffffff81116102ac57366023820112156102ac578060040135610081816102e6565b9161008f60405193846102c4565b8183526024602084019260051b820101903682116102ac5760248101925b82841061023557845185876100c1836102e6565b926100cf60405194856102c4565b8084526100de601f19916102e6565b015f5b8181106102245750505f5b82518110156101bd5760019060605f8061016973ffffffffffffffffffffffffffffffffffffffff825416610177610124878b610322565b5160405193849160208301947f850aaf6200000000000000000000000000000000000000000000000000000000865260248401526040604484015260648301906102fe565b03601f1981018452836102c4565b82885a935193f1156101a0575b61018e8287610322565b526101998186610322565b50016100ec565b503d604051906020818301016040528082525f602083013e610184565b836040518091602082016020835281518091526040830190602060408260051b8601019301915f905b8282106101f557505050500390f35b919360019193955060206102148192603f198a820301865288516102fe565b96019201920185949391926101e6565b8060606020809388010152016100e1565b833567ffffffffffffffff81116102ac578201366043820112156102ac5760248101359167ffffffffffffffff83116102b05760405161027f601f8501601f1916602001826102c4565b83815236604484860101116102ac575f6020858196604483970183860137830101528152019301926100ad565b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b90601f8019910116810190811067ffffffffffffffff8211176102b057604052565b67ffffffffffffffff81116102b05760051b60200190565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b80518210156103365760209160051b010190565b634e487b7160e01b5f52603260045260245ffdfea2646970667358221220dc84ea55f5ff02b00bb4b3a117c79a5f9e82daa595d84e3e75900bbfa21d87c364736f6c634300081c0033","sourceMap":"113:1074:31:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;113:1074:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;743:13;;113:1074;775:3;113:1074;;758:15;;;;;113:1074;794:23;113:1074;;428:53;;113:1074;428:53;;113:1074;855:55;902:7;;;;:::i;:::-;;113:1074;;855:55;;;113:1074;855:55;;;113:1074;855:55;;113:1074;855:55;;428:53;113:1074;428:53;;;;;;;;;:::i;:::-;855:55;113:1074;;855:55;;;;;;:::i;:::-;966:9;;;368:118:13;;;;994:8:31;990:101;;775:3;1104:31;;;;:::i;:::-;;;;;;:::i;:::-;;113:1074;743:13;;990:101;1273:405:13;;113:1074:31;1273:405:13;;113:1074:31;1273:405:13;;;;113:1074:31;1273:405:13;;;;113:1074:31;;1273:405:13;;;990:101:31;;758:15;;113:1074;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;113:1074:31;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;113:1074:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;113:1074:31;;;;;;;;-1:-1:-1;;113:1074:31;;;;:::o;428:53::-;113:1074;;428:53;;;;;;;;;;;;:::o;:::-;-1:-1:-1;;;428:53:31;;;;;;;","linkReferences":{}},"methodIdentifiers":{"simulateEntryPoint(address,bytes[])":"c18f5226"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.28+commit.7893614a\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"PimlicoSimulationV8Deployed\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"ep\",\"type\":\"address\"},{\"internalType\":\"bytes[]\",\"name\":\"data\",\"type\":\"bytes[]\"}],\"name\":\"simulateEntryPoint\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"\",\"type\":\"bytes[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/v08/PimlicoEntryPointSimulationsV8.sol\":\"PimlicoEntryPointSimulationsV8\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1000},\"remappings\":[\":@openzeppelin/contracts-51/=lib/openzeppelin-contracts-51/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":account-abstraction-v6/=lib/account-abstraction-v6/contracts/\",\":account-abstraction-v7/=lib/account-abstraction-v7/contracts/\",\":account-abstraction-v8/=lib/account-abstraction-v8/contracts/\",\":account-abstraction/=lib/account-abstraction-v6/contracts/\",\":bulk/=lib/bulk/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":halmos-cheatcodes/=lib/openzeppelin-contracts-51/lib/halmos-cheatcodes/src/\",\":lib/openzeppelin-contracts-51/=lib/openzeppelin-contracts-51/\",\":openzeppelin-contracts-51/=lib/openzeppelin-contracts-51/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":p256-verifier/=lib/bulk/lib/p256-verifier/\",\":solady/=lib/solady/src/\"],\"viaIR\":true},\"sources\":{\"lib/account-abstraction-v8/contracts/core/Helpers.sol\":{\"keccak256\":\"0x42b948af5fa14a96149611595df1186800c7558b2de8762e4b45a7c45c16f65e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://737a7908131ece48a5df1faaa3d0be79c42792379c27f5615dae6aa14cd68c2f\",\"dweb:/ipfs/QmPAxGMDxuek7XWSUVfZpvYE8bustfsjTDVDK8hmE88e1f\"]},\"lib/account-abstraction-v8/contracts/core/NonceManager.sol\":{\"keccak256\":\"0x83fc7ce846063465d394b690c377beba26806e7564c77127d8a91b77ca64597c\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://7ed8c369c25b26518b1c8ca43c6c3dddf7ea07c073f2b92408743f61e655dc01\",\"dweb:/ipfs/QmZuWagAa78Wvi8RKD1J1E48YxxW8SJxB6aKeT3EFz72HE\"]},\"lib/account-abstraction-v8/contracts/core/StakeManager.sol\":{\"keccak256\":\"0x98b727e4093595bf57eb09d45a9a181a26fca46591fc58601e8eae894d8f931a\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://99d933ae3257d8aad0d32a60f021e37dd0dcedcd94edab905ec7523f34656ef2\",\"dweb:/ipfs/Qme8P8tZ37cexrxjTgrLoXXgbW1nqH8rQp5SLTW99aFsi5\"]},\"lib/account-abstraction-v8/contracts/core/UserOperationLib.sol\":{\"keccak256\":\"0x2d3450fa3906422b6fdbbe7f2a2a9e36d6f3751bfa9cd80af88befd6a5be78c1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://292a0ef5295d7f2016e99d2c228958f7f6de94f5bd9652d8696af15af0094a99\",\"dweb:/ipfs/QmVg4fhkZbUB7AopGcaVPmTdvChq7W9ga8fjrc3XaJNTM2\"]},\"lib/account-abstraction-v8/contracts/interfaces/IAccount.sol\":{\"keccak256\":\"0x1030b464b49ce80da46b5b6c9af357c2d526f308de61391db6a4ec767d33b864\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://671945f8e18e7305797312b5a209506be3c9bd1d9b9b561c1e8863bccfa61319\",\"dweb:/ipfs/QmVanLK5Aenrb7J94doiE1C9oHwo86jvv8NrpDeNHwvnii\"]},\"lib/account-abstraction-v8/contracts/interfaces/IAccountExecute.sol\":{\"keccak256\":\"0xc313afc1e1b6823126be317611c3a868dc69eb29df43c658464b7188890c40e0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f3c2a7fac3764500a7e57cf4b9a610b14125edc4d87371772ec1b3407e89eced\",\"dweb:/ipfs/Qmc2Au3LvywAB5uaEc8ttuGVRZU4Mrgn1XWyqDa2zxtCHp\"]},\"lib/account-abstraction-v8/contracts/interfaces/IAggregator.sol\":{\"keccak256\":\"0xdf580eafa015b81bde436d6a5468cc92b531ada84007cef885e923f6dfc5e8bf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://99f0060626568619ac94d750eb4c0888d92ca5775a6bd957fef9847843835b77\",\"dweb:/ipfs/QmXJer3D9sTkEj3mmUDqpdqfGpe46Rn9G22nGrfZdP2wAT\"]},\"lib/account-abstraction-v8/contracts/interfaces/IEntryPoint.sol\":{\"keccak256\":\"0x3b0423737e810dd886183ed32cfed9b45edd315f5fb3e1076fc19f86791adc64\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c43081efaa2eda581b6249053281bb58cb0c4eeb6bf87efc55d95daaec2fc931\",\"dweb:/ipfs/QmXRN2JnyzWZNeFMHauTnDuc7jhxGY4ZkY37HTtjXKdC87\"]},\"lib/account-abstraction-v8/contracts/interfaces/INonceManager.sol\":{\"keccak256\":\"0xee493ae200b8c675bdc0da66f7ac6bb883ecea33672d7d0a95526b9eecdedf87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://979784a0333ac4ef3cc53ab9323a4b7fa574d929bd511f0eed03d3b0370db22d\",\"dweb:/ipfs/QmeiciN5gs4upM6vfKvrRxWiDBUzMU4uJQRRkJajhim9gX\"]},\"lib/account-abstraction-v8/contracts/interfaces/IPaymaster.sol\":{\"keccak256\":\"0x6be37abc0760d60a41124e2e3f46185a0d3df48b32bd73174790981f76fbdae8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c144ba15a63883c7da41fc0729a46108f7d5487dbac2da0bde00aed67f5a2f00\",\"dweb:/ipfs/Qmdh7MzQmCQLh7wz719xMuG2yvMUkKDVwyN44P7pLofJfS\"]},\"lib/account-abstraction-v8/contracts/interfaces/ISenderCreator.sol\":{\"keccak256\":\"0x677f651d733162b80d1af7901e4f36469e362737a8353d1d0cc7bb94489e4ba4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d6905a80acd70b444ea230b5b582164cb99aaae518bf72c88f8292df31615570\",\"dweb:/ipfs/QmfTKTPwJYf9pmA3T5PE5cCG8GLLDrLaq3jQqMP3pVRL6w\"]},\"lib/account-abstraction-v8/contracts/interfaces/IStakeManager.sol\":{\"keccak256\":\"0xe48e904fcac02295aad07fbfa1c1d449a74bf44c04e432afef6f34d1ef726ae0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5882b635ea6f5da9ae411485975888431de571f85d4baf35e3db1a83c1f14b85\",\"dweb:/ipfs/QmVSTX36Byr48y8JBmz1hCTGAAyQdTYegQbsSqdRNuSQYz\"]},\"lib/account-abstraction-v8/contracts/interfaces/PackedUserOperation.sol\":{\"keccak256\":\"0xb15188e25e45fe73097e279675b6c0beccbd4133ead2260f8f0c4ba840046800\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5d14c1edd1e95d37c26e54bb34305e2cc9dedc46eb75ec91caeb777678e8ea79\",\"dweb:/ipfs/QmcCL2syVtV7W3XvYx3si84MPkbEJKqEN8hjFNhAPoDDhK\"]},\"lib/account-abstraction-v8/contracts/utils/Exec.sol\":{\"keccak256\":\"0x9c724ee22011193ea7f92d3c3c467ee6aa27139d3ddc225c7f1254d241e6ccdd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96cc246fe944a212cbb9ba82065b2d380ec80954fcdb5d8d982b476bd5b72868\",\"dweb:/ipfs/QmZ25eFixEhukbfWGz5TBjsp7YohxUqD5i2rxhaghfvHt8\"]},\"lib/openzeppelin-contracts-51/contracts/interfaces/IERC5267.sol\":{\"keccak256\":\"0x92aa1df62dc3d33f1656d63bede0923e0df0b706ad4137c8b10b0a8fe549fd92\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c5c0f29195ad64cbe556da8e257dac8f05f78c53f90323c0d2accf8e6922d33a\",\"dweb:/ipfs/QmQ61TED8uaCZwcbh8KkgRSsCav7x7HbcGHwHts3U4DmUP\"]},\"lib/openzeppelin-contracts-51/contracts/utils/Panic.sol\":{\"keccak256\":\"0xf7fe324703a64fc51702311dc51562d5cb1497734f074e4f483bfb6717572d7a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c6a5ff4f9fd8649b7ee20800b7fa387d3465bd77cf20c2d1068cd5c98e1ed57a\",\"dweb:/ipfs/QmVSaVJf9FXFhdYEYeCEfjMVHrxDh5qL4CGkxdMWpQCrqG\"]},\"lib/openzeppelin-contracts-51/contracts/utils/ReentrancyGuardTransient.sol\":{\"keccak256\":\"0x0973ab0079b78cd41338b71d163ca180a403a7097ffe18d0204521d5dc26beb3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://24c51b62705c4df37f82fbc1b3991e8e711dc16def0b7abb71ca61853420bd45\",\"dweb:/ipfs/QmPpXXxXugFQE5hejsXXNTH5QJPNJa9DNw5K8SXq7CWz44\"]},\"lib/openzeppelin-contracts-51/contracts/utils/ShortStrings.sol\":{\"keccak256\":\"0xc9971dd236eaf8b0c13dc242392e30b5c998f39bbddbbe92da63c17079b07ac5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://194404b86f076901a9ee785ae3b4818d2d9c2916641c6eb7ea39fde2874cbd81\",\"dweb:/ipfs/QmWpxUw6ComUsoN8Q1ycWohE4qB8BCKWhLu5CAz3JmPL73\"]},\"lib/openzeppelin-contracts-51/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xcf74f855663ce2ae00ed8352666b7935f6cddea2932fdf2c3ecd30a9b1cd0e97\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9f660b1f351b757dfe01438e59888f31f33ded3afcf5cb5b0d9bf9aa6f320a8b\",\"dweb:/ipfs/QmarDJ5hZEgBtCmmrVzEZWjub9769eD686jmzb2XpSU1cM\"]},\"lib/openzeppelin-contracts-51/contracts/utils/Strings.sol\":{\"keccak256\":\"0x967996585c54704fd501d06738b0dc2463207929f6f9d8e5193770ca88035130\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c22d1c0daf76538514f93f524c1a6dca7bf5a97992537122ef3a7f8632fb3375\",\"dweb:/ipfs/QmYpjvU5LV3HsQRvoCzy9CHzQMWxEro4mHYGvcgWkCPSPw\"]},\"lib/openzeppelin-contracts-51/contracts/utils/TransientSlot.sol\":{\"keccak256\":\"0xb54649686c3eb4c036930cfdad1949fc13b8b9f1b586af31646e9eaa69529eda\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1ebb209def7de0f27f45cab753ee4147ee6a53e8ed9eb6ef92b3a279151e35e3\",\"dweb:/ipfs/Qmdt3X5PefKsRsMziwXfn7Q1afRwHxC8NjQwAGM1QeUCBr\"]},\"lib/openzeppelin-contracts-51/contracts/utils/cryptography/EIP712.sol\":{\"keccak256\":\"0xc7d50d58b73e2ea513cb734e69e36df6ab9d6c9c3693b1b23ecef974bec09ed6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4d647fa61a035f70388a30eda39239477c49c89f3e6eca4494c2d4fce92cbc10\",\"dweb:/ipfs/QmfTVm5cbShkjBrJX2zbxsUKB2my992PHcT81PVVWC5Pcu\"]},\"lib/openzeppelin-contracts-51/contracts/utils/cryptography/MessageHashUtils.sol\":{\"keccak256\":\"0x7ae21669569f436e69e064814c8b8986e1936972bdd9ad559b859f3abe7251ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ad6d66b7acf76e9ad8703c2a04c1e62c0394cba2ad8f0fbd98cf06b3d9dbb403\",\"dweb:/ipfs/QmSrJChs3MKqG6EFAi585MPJ1FyUvMxK66Bi7Pxm4e3qxU\"]},\"lib/openzeppelin-contracts-51/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xc240f71206795cead02e49f999b3523414c230cec53423298d8457a7ce9d3ea4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7d5813c665d5ea1b73e27844800eb45831b9ba608b2a9216ead318e246fd5e8f\",\"dweb:/ipfs/QmNStA3tbwHZm1tXgdmY4wB3NbYKJtzYWADjKmDMhYHjyA\"]},\"lib/openzeppelin-contracts-51/contracts/utils/math/SafeCast.sol\":{\"keccak256\":\"0x195533c86d0ef72bcc06456a4f66a9b941f38eb403739b00f21fd7c1abd1ae54\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1d578337048cad08c1c03041cca5978eff5428aa130c781b271ad9e5566e1f8\",\"dweb:/ipfs/QmPFKL2r9CBsMwmUqqdcFPfHZB2qcs9g1HDrPxzWSxomvy\"]},\"lib/openzeppelin-contracts-51/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xb1970fac7b64e6c09611e6691791e848d5e3fe410fa5899e7df2e0afd77a99e3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://db5fbb3dddd8b7047465b62575d96231ba8a2774d37fb4737fbf23340fabbb03\",\"dweb:/ipfs/QmVUSvooZKEdEdap619tcJjTLcAuH6QBdZqAzWwnAXZAWJ\"]},\"src/v08/Eip7702Support.sol\":{\"keccak256\":\"0x97dcf8077b21e11a00d0f4f04dc057a776257170f036d3d154119e5f210e8683\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb756013b769ae894aa8a5286b4a53964325944b1ef20114bcb0c62deb30119b\",\"dweb:/ipfs/QmSKopMsb23HAB8Dt7ahjenh7oBBDcFWewqLr615dpuLcA\"]},\"src/v08/EntryPoint.sol\":{\"keccak256\":\"0xaca50ed5d1fe0df3d04aa1c6b4e34d92da6f7ced3d07e1d3b79d8262acaa2024\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://e95333938a20be142b795318e83a2a5a12a2eedaa96ff78bd311b2d931b0385b\",\"dweb:/ipfs/QmR3rMwM3XqB6j7p3oqoEVKWxZEZVoZeQjxET1fbcqS4dF\"]},\"src/v08/EntryPointSimulations.sol\":{\"keccak256\":\"0x140d95d92569f3c314239aba4995df3c7d4796e054e153ce3416c49caf6eaf23\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://f30880633be2c73d4bcf2ea943ad24943aee5395de744b9033796c519ff096a8\",\"dweb:/ipfs/QmWdUVYEx5zDp68xMNY64EeCNGkap1ngpVknNi3NQh5DDH\"]},\"src/v08/IEntryPoint.sol\":{\"keccak256\":\"0x6ef27685ec58a67709de077a73667b0184aeb123643e7ef21ca9c95ad0122c71\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://66e69b2738ebf45d63e7607ef67293d897ce08a39f499b0cb0234733b9f1bac1\",\"dweb:/ipfs/QmdxBsJtzPiyWuGuxf3NFynrcLibXXrXf1CZ79HNaRnh7K\"]},\"src/v08/IEntryPointSimulations.sol\":{\"keccak256\":\"0x3486ad6d4e9ef01e1809b43b4bf3dace06e5733ee7bec11febd7309d4c605236\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://79b06eb4c98ecaebf7cf2c54322b7fe07b418c828169536c380820d4bdf56abb\",\"dweb:/ipfs/Qmdiagf27geeJ73wPkYCRErpoHUwgFLvq24aJ3HBD5rM8L\"]},\"src/v08/PimlicoEntryPointSimulationsV8.sol\":{\"keccak256\":\"0xfef9f91e0dc2d9fd10988835e394b95273f78423da15b5ebd41155e6fe37a1b7\",\"urls\":[\"bzz-raw://6b9b8c35cf99de1dd190ddee6e402d61ca5e1141359c7e68204a90f2df354ce1\",\"dweb:/ipfs/QmXqtDQygrfQmMfF1QqsSY2LsKJbPzi7BCvmqrQkWTYKJd\"]},\"src/v08/SenderCreator.sol\":{\"keccak256\":\"0x1e2fb812c446c6041c6d692bbdf1228ad60eec9779ffd7b318e680bb241d71d5\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://34db2b82ee8e7140298bcbd1dcabf06b3bbcb60fd597f81b5b9e53b25c30b447\",\"dweb:/ipfs/QmT4WcNu6NCaxxJ6FWGFpjadfXsMPVhgLMQfGWsW9rWZAZ\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.28+commit.7893614a"},"language":"Solidity","output":{"abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"type":"event","name":"PimlicoSimulationV8Deployed","anonymous":false},{"inputs":[{"internalType":"address payable","name":"ep","type":"address"},{"internalType":"bytes[]","name":"data","type":"bytes[]"}],"stateMutability":"nonpayable","type":"function","name":"simulateEntryPoint","outputs":[{"internalType":"bytes[]","name":"","type":"bytes[]"}]}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-51/=lib/openzeppelin-contracts-51/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","account-abstraction-v6/=lib/account-abstraction-v6/contracts/","account-abstraction-v7/=lib/account-abstraction-v7/contracts/","account-abstraction-v8/=lib/account-abstraction-v8/contracts/","account-abstraction/=lib/account-abstraction-v6/contracts/","bulk/=lib/bulk/","ds-test/=lib/forge-std/lib/ds-test/src/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","halmos-cheatcodes/=lib/openzeppelin-contracts-51/lib/halmos-cheatcodes/src/","lib/openzeppelin-contracts-51/=lib/openzeppelin-contracts-51/","openzeppelin-contracts-51/=lib/openzeppelin-contracts-51/","openzeppelin-contracts/=lib/openzeppelin-contracts/","p256-verifier/=lib/bulk/lib/p256-verifier/","solady/=lib/solady/src/"],"optimizer":{"enabled":true,"runs":1000},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/v08/PimlicoEntryPointSimulationsV8.sol":"PimlicoEntryPointSimulationsV8"},"evmVersion":"cancun","libraries":{},"viaIR":true},"sources":{"lib/account-abstraction-v8/contracts/core/Helpers.sol":{"keccak256":"0x42b948af5fa14a96149611595df1186800c7558b2de8762e4b45a7c45c16f65e","urls":["bzz-raw://737a7908131ece48a5df1faaa3d0be79c42792379c27f5615dae6aa14cd68c2f","dweb:/ipfs/QmPAxGMDxuek7XWSUVfZpvYE8bustfsjTDVDK8hmE88e1f"],"license":"MIT"},"lib/account-abstraction-v8/contracts/core/NonceManager.sol":{"keccak256":"0x83fc7ce846063465d394b690c377beba26806e7564c77127d8a91b77ca64597c","urls":["bzz-raw://7ed8c369c25b26518b1c8ca43c6c3dddf7ea07c073f2b92408743f61e655dc01","dweb:/ipfs/QmZuWagAa78Wvi8RKD1J1E48YxxW8SJxB6aKeT3EFz72HE"],"license":"GPL-3.0"},"lib/account-abstraction-v8/contracts/core/StakeManager.sol":{"keccak256":"0x98b727e4093595bf57eb09d45a9a181a26fca46591fc58601e8eae894d8f931a","urls":["bzz-raw://99d933ae3257d8aad0d32a60f021e37dd0dcedcd94edab905ec7523f34656ef2","dweb:/ipfs/Qme8P8tZ37cexrxjTgrLoXXgbW1nqH8rQp5SLTW99aFsi5"],"license":"GPL-3.0"},"lib/account-abstraction-v8/contracts/core/UserOperationLib.sol":{"keccak256":"0x2d3450fa3906422b6fdbbe7f2a2a9e36d6f3751bfa9cd80af88befd6a5be78c1","urls":["bzz-raw://292a0ef5295d7f2016e99d2c228958f7f6de94f5bd9652d8696af15af0094a99","dweb:/ipfs/QmVg4fhkZbUB7AopGcaVPmTdvChq7W9ga8fjrc3XaJNTM2"],"license":"MIT"},"lib/account-abstraction-v8/contracts/interfaces/IAccount.sol":{"keccak256":"0x1030b464b49ce80da46b5b6c9af357c2d526f308de61391db6a4ec767d33b864","urls":["bzz-raw://671945f8e18e7305797312b5a209506be3c9bd1d9b9b561c1e8863bccfa61319","dweb:/ipfs/QmVanLK5Aenrb7J94doiE1C9oHwo86jvv8NrpDeNHwvnii"],"license":"MIT"},"lib/account-abstraction-v8/contracts/interfaces/IAccountExecute.sol":{"keccak256":"0xc313afc1e1b6823126be317611c3a868dc69eb29df43c658464b7188890c40e0","urls":["bzz-raw://f3c2a7fac3764500a7e57cf4b9a610b14125edc4d87371772ec1b3407e89eced","dweb:/ipfs/Qmc2Au3LvywAB5uaEc8ttuGVRZU4Mrgn1XWyqDa2zxtCHp"],"license":"MIT"},"lib/account-abstraction-v8/contracts/interfaces/IAggregator.sol":{"keccak256":"0xdf580eafa015b81bde436d6a5468cc92b531ada84007cef885e923f6dfc5e8bf","urls":["bzz-raw://99f0060626568619ac94d750eb4c0888d92ca5775a6bd957fef9847843835b77","dweb:/ipfs/QmXJer3D9sTkEj3mmUDqpdqfGpe46Rn9G22nGrfZdP2wAT"],"license":"MIT"},"lib/account-abstraction-v8/contracts/interfaces/IEntryPoint.sol":{"keccak256":"0x3b0423737e810dd886183ed32cfed9b45edd315f5fb3e1076fc19f86791adc64","urls":["bzz-raw://c43081efaa2eda581b6249053281bb58cb0c4eeb6bf87efc55d95daaec2fc931","dweb:/ipfs/QmXRN2JnyzWZNeFMHauTnDuc7jhxGY4ZkY37HTtjXKdC87"],"license":"MIT"},"lib/account-abstraction-v8/contracts/interfaces/INonceManager.sol":{"keccak256":"0xee493ae200b8c675bdc0da66f7ac6bb883ecea33672d7d0a95526b9eecdedf87","urls":["bzz-raw://979784a0333ac4ef3cc53ab9323a4b7fa574d929bd511f0eed03d3b0370db22d","dweb:/ipfs/QmeiciN5gs4upM6vfKvrRxWiDBUzMU4uJQRRkJajhim9gX"],"license":"MIT"},"lib/account-abstraction-v8/contracts/interfaces/IPaymaster.sol":{"keccak256":"0x6be37abc0760d60a41124e2e3f46185a0d3df48b32bd73174790981f76fbdae8","urls":["bzz-raw://c144ba15a63883c7da41fc0729a46108f7d5487dbac2da0bde00aed67f5a2f00","dweb:/ipfs/Qmdh7MzQmCQLh7wz719xMuG2yvMUkKDVwyN44P7pLofJfS"],"license":"MIT"},"lib/account-abstraction-v8/contracts/interfaces/ISenderCreator.sol":{"keccak256":"0x677f651d733162b80d1af7901e4f36469e362737a8353d1d0cc7bb94489e4ba4","urls":["bzz-raw://d6905a80acd70b444ea230b5b582164cb99aaae518bf72c88f8292df31615570","dweb:/ipfs/QmfTKTPwJYf9pmA3T5PE5cCG8GLLDrLaq3jQqMP3pVRL6w"],"license":"MIT"},"lib/account-abstraction-v8/contracts/interfaces/IStakeManager.sol":{"keccak256":"0xe48e904fcac02295aad07fbfa1c1d449a74bf44c04e432afef6f34d1ef726ae0","urls":["bzz-raw://5882b635ea6f5da9ae411485975888431de571f85d4baf35e3db1a83c1f14b85","dweb:/ipfs/QmVSTX36Byr48y8JBmz1hCTGAAyQdTYegQbsSqdRNuSQYz"],"license":"MIT"},"lib/account-abstraction-v8/contracts/interfaces/PackedUserOperation.sol":{"keccak256":"0xb15188e25e45fe73097e279675b6c0beccbd4133ead2260f8f0c4ba840046800","urls":["bzz-raw://5d14c1edd1e95d37c26e54bb34305e2cc9dedc46eb75ec91caeb777678e8ea79","dweb:/ipfs/QmcCL2syVtV7W3XvYx3si84MPkbEJKqEN8hjFNhAPoDDhK"],"license":"MIT"},"lib/account-abstraction-v8/contracts/utils/Exec.sol":{"keccak256":"0x9c724ee22011193ea7f92d3c3c467ee6aa27139d3ddc225c7f1254d241e6ccdd","urls":["bzz-raw://96cc246fe944a212cbb9ba82065b2d380ec80954fcdb5d8d982b476bd5b72868","dweb:/ipfs/QmZ25eFixEhukbfWGz5TBjsp7YohxUqD5i2rxhaghfvHt8"],"license":"MIT"},"lib/openzeppelin-contracts-51/contracts/interfaces/IERC5267.sol":{"keccak256":"0x92aa1df62dc3d33f1656d63bede0923e0df0b706ad4137c8b10b0a8fe549fd92","urls":["bzz-raw://c5c0f29195ad64cbe556da8e257dac8f05f78c53f90323c0d2accf8e6922d33a","dweb:/ipfs/QmQ61TED8uaCZwcbh8KkgRSsCav7x7HbcGHwHts3U4DmUP"],"license":"MIT"},"lib/openzeppelin-contracts-51/contracts/utils/Panic.sol":{"keccak256":"0xf7fe324703a64fc51702311dc51562d5cb1497734f074e4f483bfb6717572d7a","urls":["bzz-raw://c6a5ff4f9fd8649b7ee20800b7fa387d3465bd77cf20c2d1068cd5c98e1ed57a","dweb:/ipfs/QmVSaVJf9FXFhdYEYeCEfjMVHrxDh5qL4CGkxdMWpQCrqG"],"license":"MIT"},"lib/openzeppelin-contracts-51/contracts/utils/ReentrancyGuardTransient.sol":{"keccak256":"0x0973ab0079b78cd41338b71d163ca180a403a7097ffe18d0204521d5dc26beb3","urls":["bzz-raw://24c51b62705c4df37f82fbc1b3991e8e711dc16def0b7abb71ca61853420bd45","dweb:/ipfs/QmPpXXxXugFQE5hejsXXNTH5QJPNJa9DNw5K8SXq7CWz44"],"license":"MIT"},"lib/openzeppelin-contracts-51/contracts/utils/ShortStrings.sol":{"keccak256":"0xc9971dd236eaf8b0c13dc242392e30b5c998f39bbddbbe92da63c17079b07ac5","urls":["bzz-raw://194404b86f076901a9ee785ae3b4818d2d9c2916641c6eb7ea39fde2874cbd81","dweb:/ipfs/QmWpxUw6ComUsoN8Q1ycWohE4qB8BCKWhLu5CAz3JmPL73"],"license":"MIT"},"lib/openzeppelin-contracts-51/contracts/utils/StorageSlot.sol":{"keccak256":"0xcf74f855663ce2ae00ed8352666b7935f6cddea2932fdf2c3ecd30a9b1cd0e97","urls":["bzz-raw://9f660b1f351b757dfe01438e59888f31f33ded3afcf5cb5b0d9bf9aa6f320a8b","dweb:/ipfs/QmarDJ5hZEgBtCmmrVzEZWjub9769eD686jmzb2XpSU1cM"],"license":"MIT"},"lib/openzeppelin-contracts-51/contracts/utils/Strings.sol":{"keccak256":"0x967996585c54704fd501d06738b0dc2463207929f6f9d8e5193770ca88035130","urls":["bzz-raw://c22d1c0daf76538514f93f524c1a6dca7bf5a97992537122ef3a7f8632fb3375","dweb:/ipfs/QmYpjvU5LV3HsQRvoCzy9CHzQMWxEro4mHYGvcgWkCPSPw"],"license":"MIT"},"lib/openzeppelin-contracts-51/contracts/utils/TransientSlot.sol":{"keccak256":"0xb54649686c3eb4c036930cfdad1949fc13b8b9f1b586af31646e9eaa69529eda","urls":["bzz-raw://1ebb209def7de0f27f45cab753ee4147ee6a53e8ed9eb6ef92b3a279151e35e3","dweb:/ipfs/Qmdt3X5PefKsRsMziwXfn7Q1afRwHxC8NjQwAGM1QeUCBr"],"license":"MIT"},"lib/openzeppelin-contracts-51/contracts/utils/cryptography/EIP712.sol":{"keccak256":"0xc7d50d58b73e2ea513cb734e69e36df6ab9d6c9c3693b1b23ecef974bec09ed6","urls":["bzz-raw://4d647fa61a035f70388a30eda39239477c49c89f3e6eca4494c2d4fce92cbc10","dweb:/ipfs/QmfTVm5cbShkjBrJX2zbxsUKB2my992PHcT81PVVWC5Pcu"],"license":"MIT"},"lib/openzeppelin-contracts-51/contracts/utils/cryptography/MessageHashUtils.sol":{"keccak256":"0x7ae21669569f436e69e064814c8b8986e1936972bdd9ad559b859f3abe7251ae","urls":["bzz-raw://ad6d66b7acf76e9ad8703c2a04c1e62c0394cba2ad8f0fbd98cf06b3d9dbb403","dweb:/ipfs/QmSrJChs3MKqG6EFAi585MPJ1FyUvMxK66Bi7Pxm4e3qxU"],"license":"MIT"},"lib/openzeppelin-contracts-51/contracts/utils/math/Math.sol":{"keccak256":"0xc240f71206795cead02e49f999b3523414c230cec53423298d8457a7ce9d3ea4","urls":["bzz-raw://7d5813c665d5ea1b73e27844800eb45831b9ba608b2a9216ead318e246fd5e8f","dweb:/ipfs/QmNStA3tbwHZm1tXgdmY4wB3NbYKJtzYWADjKmDMhYHjyA"],"license":"MIT"},"lib/openzeppelin-contracts-51/contracts/utils/math/SafeCast.sol":{"keccak256":"0x195533c86d0ef72bcc06456a4f66a9b941f38eb403739b00f21fd7c1abd1ae54","urls":["bzz-raw://b1d578337048cad08c1c03041cca5978eff5428aa130c781b271ad9e5566e1f8","dweb:/ipfs/QmPFKL2r9CBsMwmUqqdcFPfHZB2qcs9g1HDrPxzWSxomvy"],"license":"MIT"},"lib/openzeppelin-contracts-51/contracts/utils/math/SignedMath.sol":{"keccak256":"0xb1970fac7b64e6c09611e6691791e848d5e3fe410fa5899e7df2e0afd77a99e3","urls":["bzz-raw://db5fbb3dddd8b7047465b62575d96231ba8a2774d37fb4737fbf23340fabbb03","dweb:/ipfs/QmVUSvooZKEdEdap619tcJjTLcAuH6QBdZqAzWwnAXZAWJ"],"license":"MIT"},"src/v08/Eip7702Support.sol":{"keccak256":"0x97dcf8077b21e11a00d0f4f04dc057a776257170f036d3d154119e5f210e8683","urls":["bzz-raw://bb756013b769ae894aa8a5286b4a53964325944b1ef20114bcb0c62deb30119b","dweb:/ipfs/QmSKopMsb23HAB8Dt7ahjenh7oBBDcFWewqLr615dpuLcA"],"license":"MIT"},"src/v08/EntryPoint.sol":{"keccak256":"0xaca50ed5d1fe0df3d04aa1c6b4e34d92da6f7ced3d07e1d3b79d8262acaa2024","urls":["bzz-raw://e95333938a20be142b795318e83a2a5a12a2eedaa96ff78bd311b2d931b0385b","dweb:/ipfs/QmR3rMwM3XqB6j7p3oqoEVKWxZEZVoZeQjxET1fbcqS4dF"],"license":"GPL-3.0"},"src/v08/EntryPointSimulations.sol":{"keccak256":"0x140d95d92569f3c314239aba4995df3c7d4796e054e153ce3416c49caf6eaf23","urls":["bzz-raw://f30880633be2c73d4bcf2ea943ad24943aee5395de744b9033796c519ff096a8","dweb:/ipfs/QmWdUVYEx5zDp68xMNY64EeCNGkap1ngpVknNi3NQh5DDH"],"license":"GPL-3.0"},"src/v08/IEntryPoint.sol":{"keccak256":"0x6ef27685ec58a67709de077a73667b0184aeb123643e7ef21ca9c95ad0122c71","urls":["bzz-raw://66e69b2738ebf45d63e7607ef67293d897ce08a39f499b0cb0234733b9f1bac1","dweb:/ipfs/QmdxBsJtzPiyWuGuxf3NFynrcLibXXrXf1CZ79HNaRnh7K"],"license":"MIT"},"src/v08/IEntryPointSimulations.sol":{"keccak256":"0x3486ad6d4e9ef01e1809b43b4bf3dace06e5733ee7bec11febd7309d4c605236","urls":["bzz-raw://79b06eb4c98ecaebf7cf2c54322b7fe07b418c828169536c380820d4bdf56abb","dweb:/ipfs/Qmdiagf27geeJ73wPkYCRErpoHUwgFLvq24aJ3HBD5rM8L"],"license":"GPL-3.0"},"src/v08/PimlicoEntryPointSimulationsV8.sol":{"keccak256":"0xfef9f91e0dc2d9fd10988835e394b95273f78423da15b5ebd41155e6fe37a1b7","urls":["bzz-raw://6b9b8c35cf99de1dd190ddee6e402d61ca5e1141359c7e68204a90f2df354ce1","dweb:/ipfs/QmXqtDQygrfQmMfF1QqsSY2LsKJbPzi7BCvmqrQkWTYKJd"],"license":null},"src/v08/SenderCreator.sol":{"keccak256":"0x1e2fb812c446c6041c6d692bbdf1228ad60eec9779ffd7b318e680bb241d71d5","urls":["bzz-raw://34db2b82ee8e7140298bcbd1dcabf06b3bbcb60fd597f81b5b9e53b25c30b447","dweb:/ipfs/QmT4WcNu6NCaxxJ6FWGFpjadfXsMPVhgLMQfGWsW9rWZAZ"],"license":"GPL-3.0"}},"version":1},"id":31}
@@ -1 +0,0 @@
1
- {"id":"96c79d1c9e9e095f","source_id_to_path":{"0":"lib/account-abstraction-v6/contracts/core/Helpers.sol","1":"lib/account-abstraction-v6/contracts/core/NonceManager.sol","2":"lib/account-abstraction-v6/contracts/core/SenderCreator.sol","3":"lib/account-abstraction-v6/contracts/core/StakeManager.sol","4":"lib/account-abstraction-v6/contracts/interfaces/IAccount.sol","5":"lib/account-abstraction-v6/contracts/interfaces/IAggregator.sol","6":"lib/account-abstraction-v6/contracts/interfaces/IEntryPoint.sol","7":"lib/account-abstraction-v6/contracts/interfaces/INonceManager.sol","8":"lib/account-abstraction-v6/contracts/interfaces/IPaymaster.sol","9":"lib/account-abstraction-v6/contracts/interfaces/IStakeManager.sol","10":"lib/account-abstraction-v6/contracts/interfaces/UserOperation.sol","11":"lib/account-abstraction-v6/contracts/utils/Exec.sol","12":"lib/openzeppelin-contracts/contracts/utils/ReentrancyGuard.sol","13":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","14":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","15":"src/v06/EntryPointCodeOverride.sol"},"language":"Solidity"}
@@ -1 +0,0 @@
1
- {"id":"b400ff92e5db9cf3","source_id_to_path":{"0":"lib/account-abstraction-v8/contracts/core/Helpers.sol","1":"lib/account-abstraction-v8/contracts/core/NonceManager.sol","2":"lib/account-abstraction-v8/contracts/core/StakeManager.sol","3":"lib/account-abstraction-v8/contracts/core/UserOperationLib.sol","4":"lib/account-abstraction-v8/contracts/interfaces/IAccount.sol","5":"lib/account-abstraction-v8/contracts/interfaces/IAccountExecute.sol","6":"lib/account-abstraction-v8/contracts/interfaces/IAggregator.sol","7":"lib/account-abstraction-v8/contracts/interfaces/IEntryPoint.sol","8":"lib/account-abstraction-v8/contracts/interfaces/INonceManager.sol","9":"lib/account-abstraction-v8/contracts/interfaces/IPaymaster.sol","10":"lib/account-abstraction-v8/contracts/interfaces/ISenderCreator.sol","11":"lib/account-abstraction-v8/contracts/interfaces/IStakeManager.sol","12":"lib/account-abstraction-v8/contracts/interfaces/PackedUserOperation.sol","13":"lib/account-abstraction-v8/contracts/utils/Exec.sol","14":"lib/openzeppelin-contracts-51/contracts/interfaces/IERC5267.sol","15":"lib/openzeppelin-contracts-51/contracts/utils/Panic.sol","16":"lib/openzeppelin-contracts-51/contracts/utils/ReentrancyGuardTransient.sol","17":"lib/openzeppelin-contracts-51/contracts/utils/ShortStrings.sol","18":"lib/openzeppelin-contracts-51/contracts/utils/StorageSlot.sol","19":"lib/openzeppelin-contracts-51/contracts/utils/Strings.sol","20":"lib/openzeppelin-contracts-51/contracts/utils/TransientSlot.sol","21":"lib/openzeppelin-contracts-51/contracts/utils/cryptography/EIP712.sol","22":"lib/openzeppelin-contracts-51/contracts/utils/cryptography/MessageHashUtils.sol","23":"lib/openzeppelin-contracts-51/contracts/utils/math/Math.sol","24":"lib/openzeppelin-contracts-51/contracts/utils/math/SafeCast.sol","25":"lib/openzeppelin-contracts-51/contracts/utils/math/SignedMath.sol","26":"src/v08/Eip7702Support.sol","27":"src/v08/EntryPoint.sol","28":"src/v08/EntryPointSimulations.sol","29":"src/v08/IEntryPoint.sol","30":"src/v08/IEntryPointSimulations.sol","31":"src/v08/PimlicoEntryPointSimulationsV8.sol","32":"src/v08/SenderCreator.sol"},"language":"Solidity"}
@@ -1 +0,0 @@
1
- { "abi": [{ "type": "constructor", "inputs": [], "stateMutability": "nonpayable" }, { "type": "function", "name": "simulateEntryPoint", "inputs": [{ "name": "ep", "type": "address", "internalType": "address payable" }, { "name": "data", "type": "bytes[]", "internalType": "bytes[]" }], "outputs": [{ "name": "", "type": "bytes[]", "internalType": "bytes[]" }], "stateMutability": "nonpayable" }, { "type": "event", "name": "PimlicoSimulationV7Deployed", "inputs": [], "anonymous": false }], "bytecode": { "object": "0x6080806040523460a757614e6e8181016001600160401b038111838210176091578291610458833903906000f08015608557600080546001600160a01b0319166001600160a01b0392909216919091178155604051907fdbcc4f7de25a77d8f29bb7bf3bdd025113f28c19a292a93e6fb38bb2d0a0d12a9080a16103ab90816100ad8239f35b6040513d6000823e3d90fd5b634e487b7160e01b600052604160045260246000fd5b600080fdfe6080604052600436101561001257600080fd5b60003560e01c63c18f52261461002757600080fd5b346102b55760403660031901126102b55760043573ffffffffffffffffffffffffffffffffffffffff81168091036102b55760243567ffffffffffffffff81116102b557366023820112156102b5578060040135610084816102f2565b9161009260405193846102d0565b8183526024602084019260051b820101903682116102b55760248101925b82841061023d57845185876100c4836102f2565b926100d260405194856102d0565b8084526100e1601f19916102f2565b0160005b81811061022c57505060005b82518110156101c457600190606060008061016f73ffffffffffffffffffffffffffffffffffffffff82541661017d61012a878b61034b565b5160405193849160208301947f850aaf62000000000000000000000000000000000000000000000000000000008652602484015260406044840152606483019061030a565b03601f1981018452836102d0565b82885a935193f1156101a6575b610194828761034b565b5261019f818661034b565b50016100f1565b503d604051906020818301016040528082526000602083013e61018a565b836040518091602082016020835281518091526040830190602060408260051b8601019301916000905b8282106101fd57505050500390f35b9193600191939550602061021c8192603f198a8203018652885161030a565b96019201920185949391926101ee565b8060606020809388010152016100e5565b833567ffffffffffffffff81116102b5578201366043820112156102b55760248101359167ffffffffffffffff83116102ba57604051610287601f8501601f1916602001826102d0565b83815236604484860101116102b55760006020858196604483970183860137830101528152019301926100b0565b600080fd5b634e487b7160e01b600052604160045260246000fd5b90601f8019910116810190811067ffffffffffffffff8211176102ba57604052565b67ffffffffffffffff81116102ba5760051b60200190565b919082519283825260005b848110610336575050826000602080949584010152601f8019910116010190565b80602080928401015182828601015201610315565b805182101561035f5760209160051b010190565b634e487b7160e01b600052603260045260246000fdfea264697066735822122062975c4d47768efffe557c10cf10ecfd39a72d039f0f35a49aec99a5ff87f9bb64736f6c634300081c003360c080604052346101005760016002556101948181016001600160401b038111838210176100ea578291614cda833903906000f080156100de576080523060a052610048610105565b60008152602081019060008252806020610060610105565b600081520152600380546001600160a01b03191690555160045551600555604051614bb5908161012582396080518161411c015260a051818181612bf40152818161342c01528181613488015281816136720152818161372f0152818161378a0152818161389d0152818161395a015281816139b50152613ac80152f35b6040513d6000823e3d90fd5b634e487b7160e01b600052604160045260246000fd5b600080fd5b60408051919082016001600160401b038111838210176100ea5760405256fe60806040526004361015610023575b361561001957600080fd5b610021612cec565b005b60003560e01c80630396cb60146101c357806303d1dcaf146101be5780630bd28e3b146101b95780630da82661146101b45780630dbfc6bd146101af5780631b2e01b8146101aa578063205c2878146101a557806321e60b37146101a057806322cdde4c1461019b578063263934db1461019657806330ec25d11461019157806335567e1a1461018c57806344403473146101875780635287ce121461018257806370a082311461017d5780637472949c1461017857806376ad61231461017357806397b2dcb91461016e578063b760faf914610169578063bb9fe6bf14610164578063c23a5cea1461015f578063c3bce0091461015a578063c579f76b14610155578063f7e426e814610150578063fc7e286d1461014b5763fe2171cb0361000e57611926565b611898565b61185f565b6115cf565b611598565b611471565b61134a565b61131f565b611125565b6110ec565b6110cc565b61108e565b610f7d565b610f37565b610e65565b610de7565b610cd0565b610c9f565b610ba2565b610aaa565b610a49565b6109cb565b61081d565b610593565b6104f6565b60203660031901126103b95760043563ffffffff8116908181036103b9576103b47fa5ae833d0bb1dcd632d98a8b70973e8516812898e19bf27b70071ebc8dc52c019161039661028461027461022c336001600160a01b03166000526000602052604060002090565b96610238811515611976565b61026560018901549161025e6102558463ffffffff9060781c1690565b63ffffffff1690565b11156119c1565b60081c6001600160701b031690565b6001600160701b03349116611a3f565b94610290861515611a4c565b6102a36001600160701b03871115611a97565b546102ac61069d565b908152600160208201526001600160701b038616604082015263ffffffff83166060820152600060808201526102f5336001600160a01b03166000526000602052604060002090565b81518155602082015160019091018054604084015160608501516080909501517fffffffffffffff0000000000000000000000000000000000000000000000000090921660ff941515949094169390931760089390931b6effffffffffffffffffffffffffff00169290921760789390931b72ffffffff000000000000000000000000000000169290921760989190911b65ffffffffffff60981b16179055565b6040805194855263ffffffff90911660208501523393918291820190565b0390a2005b600080fd5b9181601f840112156103b95782359167ffffffffffffffff83116103b9576020808501948460051b0101116103b957565b6001600160a01b038116036103b957565b359061040b826103ef565b565b60c06003198201126103b95760043567ffffffffffffffff81116103b95781610438916004016103be565b929092916024359067ffffffffffffffff82116103b95760609082900360031901126103b9576004019060443561046e816103ef565b90606435906084359060a43590565b60005b8381106104905750506000910152565b8181015183820152602001610480565b906020916104b98151809281855285808601910161047d565b601f01601f1916010190565b608060406104f3936020845280516020850152602081015115158285015201519160608082015201906104a0565b90565b346103b95761057961056d61055661050d3661040d565b969194909561051d949394611ae2565b50610550610529611b03565b61053e6105368780611b73565b825190612d40565b6105488680611b73565b905a91612f9b565b50613276565b6105686105638280611b73565b61333b565b6133ce565b604051918291826104c5565b0390f35b602435906001600160c01b03821682036103b957565b346103b95760203660031901126103b9576004356001600160c01b03811681036103b9576105e1903360005260016020526040600020906001600160c01b0316600052602052604060002090565b6105eb8154611b89565b9055005b634e487b7160e01b600052604160045260246000fd5b60a0810190811067ffffffffffffffff82111761062157604052565b6105ef565b6060810190811067ffffffffffffffff82111761062157604052565b610140810190811067ffffffffffffffff82111761062157604052565b6040810190811067ffffffffffffffff82111761062157604052565b90601f8019910116810190811067ffffffffffffffff82111761062157604052565b6040519061040b60a08361067b565b6040519061040b6101408361067b565b6040519061040b6101008361067b565b6040519061040b60408361067b565b6040519061040b60608361067b565b6040519061040b6101208361067b565b67ffffffffffffffff811161062157601f01601f191660200190565b929192610722826106fa565b91610730604051938461067b565b8294818452818301116103b9578281602093846000960137010152565b9080601f830112156103b9578160206104f393359101610716565b60431901906101c082126103b95760405161078281610605565b6101408193126103b9576107946106ac565b61079e6044610400565b81526064356020820152608435604082015260a435606082015260c435608082015260e43560a08201526101043560c08201526107dc610124610400565b60e0820152610144356101008201526101643561012082015281526101843560208201526101a43560408201526101c435606082015260806101e435910152565b346103b9576102203660031901126103b95760043567ffffffffffffffff81116103b95761084f90369060040161074d565b3660231901906101c082126103b9576101406040519261086e84610605565b126103b95761087b6106ac565b6108856024610400565b815260443560208201526064356040820152608435606082015260a435608082015260c43560a082015260e43560c08201526108c2610104610400565b60e0820152610124356101008201526101443561012082015282526101643560208301526101843560408301526101a43560608301526101c43560808301526101e4359067ffffffffffffffff82116103b95760409261092961093493369060040161074d565b906102043592611b98565b82519182526020820152f35b60206003198201126103b9576004359067ffffffffffffffff82116103b95761096b916004016103be565b9091565b9061010060e06104f393805184526020810151602085015260408101516040850152606081015160608501526080810151608085015260a081015160a085015260c0810151151560c08501520151918160e082015201906104a0565b346103b9576109e26109dc36610940565b90611f05565b6040518091602082016020835281518091526040830190602060408260051b8601019301916000905b828210610a1a57505050500390f35b91936001919395506020610a398192603f198a8203018652885161096f565b9601920192018594939192610a0b565b346103b95760403660031901126103b9576020610aa1600435610a6b816103ef565b6001600160a01b03610a7b61057d565b9116600052600183526040600020906001600160c01b0316600052602052604060002090565b54604051908152f35b346103b95760403660031901126103b957600435610ac7816103ef565b602435336000526000602052604060002091825490818311610b4f5760008080856001600160a01b03829589610b00846100219a6120af565b9055604080516001600160a01b03831681526020810185905233917fd1c19fbcd4551a5edfb66d43d2e337c04837afda3482b42bdf569a8fccdae5fb91a2165af1610b496120bc565b506120ec565b606460405162461bcd60e51b815260206004820152601960248201527f576974686472617720616d6f756e7420746f6f206c61726765000000000000006044820152fd5b90816101209103126103b95790565b346103b9576102003660031901126103b95760243560043567ffffffffffffffff82116103b957610bda610579923690600401610b93565b90610be436610768565b600092815192610bf48483612d40565b610bfd82612137565b60208401526001600160a01b0360e0610c3786610100604082015160608301510160808301510160a08301510160c0830151019101510290565b95015116610c5f575b6040805160008082526020820188905291810191909152806060810188565b610c699450613c92565b905038808080610c40565b60206003198201126103b9576004359067ffffffffffffffff82116103b9576104f391600401610b93565b346103b9576020610cb7610cb236610c74565b612137565b604051908152f35b9060206104f392818152019061096f565b346103b957610cfc610ce136610940565b809291610cec611e05565b50610cf682611e5a565b50611f05565b6000198201918211610d2a5761057991610d1591611ef1565b5160405191829160208352602083019061096f565b611a0c565b906104f39060e06080610d81818651610140865280516101408701526020810151610160870152604081015161018087015260608101516101a0870152015160a06101c08601526101e08501906104a0565b60208087015180518683015201516040850152946040810151805160608601526020015160808501526060810151805160a08601526020015160c0850152015191019080516001600160a01b031682526020908101518051828401520151604090910152565b346103b957610dfe610df836610940565b906122c8565b6040518091602082016020835281518091526040830190602060408260051b8601019301916000905b828210610e3657505050500390f35b91936001919395506020610e558192603f198a82030186528851610d2f565b9601920192018594939192610e27565b346103b95760403660031901126103b9576020600435610e84816103ef565b6001600160a01b03610e9461057d565b911660005260018252610ebe816040600020906001600160c01b0316600052602052604060002090565b546040805192901b67ffffffffffffffff1916178152f35b60606003198201126103b957600435610eee816103ef565b9160243567ffffffffffffffff81116103b957826023820112156103b95780600401359267ffffffffffffffff84116103b957602484830101116103b957602401919060443590565b346103b95760008080610f4936610ed6565b939181604094929451948592833781018381520393f1610f676120bc565b9015610f6f57005b80519081156103b957602001fd5b346103b95760203660031901126103b9576001600160a01b03600435610fa2816103ef565b60006080604051610fb281610605565b8281528260208201528260408201528260608201520152166000526000602052610579604060002061103a65ffffffffffff600160405193610ff385610605565b80548552015460ff8116151560208501526001600160701b038160081c16604085015263ffffffff8160781c16606085015260981c16608083019065ffffffffffff169052565b60405191829182919091608065ffffffffffff8160a0840195805185526020810151151560208601526001600160701b03604082015116604086015263ffffffff6060820151166060860152015116910152565b346103b95760203660031901126103b9576001600160a01b036004356110b3816103ef565b1660005260006020526020604060002054604051908152f35b346103b95761057961056d6110e03661040d565b959490949391936123b5565b346103b95761057961056d6111136111033661040d565b9691949095610550949394611ae2565b6111206105638280611b73565b6136ef565b346103b95760603660031901126103b95760043567ffffffffffffffff81116103b957611156903690600401610b93565b602435611162816103ef565b60443567ffffffffffffffff81116103b95761118290369060040161074d565b9161118b611e05565b5060009160028054146113105761057993600280556111a8611b03565b6111b18461333b565b6111bb81856128b6565b91955a6060850151856111d16060850185612618565b8c60038211611308575b7fffffffff0000000000000000000000000000000000000000000000000000000016638dd7712f60e01b036112ef57505061123f611253611258956020840151604051938492638dd7712f60e01b6020850152604060248501526064840190612e6b565b90604483015203601f19810183528261067b565b611b98565b9390975b80956060976001600160a01b0381166112c6575b5050509560806112ab96970151976112866106bc565b988952602089015260408801526060870152608086015260a0850152151560c0840152565b60e08201526112ba6001600255565b60405191829182610cbf565b6112ab98508280949850602083519301915af19560806112e46120bc565b979591979638611270565b611300955090611253913691610716565b93909761125c565b5081356111db565b600483633ee5aeb560e01b8152fd5b60203660031901126103b95761002160043561133a816103ef565b612442565b60009103126103b957565b346103b95760003660031901126103b9573360005260006020526001604060002001805463ffffffff8160781c161561142d576113b66113a86102558361139c6113976113f09660ff1690565b612483565b60781c63ffffffff1690565b65ffffffffffff42166124ce565b82547fffffffffffffff000000000000ffffffffffffffffffffffffffffffffffff001665ffffffffffff60981b609883901b1617909255565b60405165ffffffffffff909116815233907ffa9b3c14cc825c412c9ed81b3ba365a5b459439403f18829e572ed53a4180f0a9080602081016103b4565b606460405162461bcd60e51b815260206004820152600a60248201527f6e6f74207374616b6564000000000000000000000000000000000000000000006044820152fd5b346103b95760203660031901126103b9576100216000808080600435611496816103ef565b6001600160a01b0360016114bd336001600160a01b03166000526000602052604060002090565b019161154b83549361152365ffffffffffff61150f6114f56114e9896001600160701b039060081c1690565b6001600160701b031690565b976115018915156124ec565b60981c65ffffffffffff1690565b1661151b811515612537565b421015612582565b80547fffffffffffffff000000000000000000000000000000000000000000000000ff169055565b604080516001600160a01b03831681526020810185905233917fb7c918e0e249f999e965cafeb6c664271b3f4317d296461500e71da39f0cbda391a2165af16115926120bc565b506125cd565b346103b9576105796115b16115ac36610c74565b6126f0565b604051918291602083526020830190610d2f565b801515036103b957565b346103b9576102203660031901126103b95760043560243567ffffffffffffffff81116103b957611604903690600401610b93565b9061160e36610768565b610204359061161c826115c5565b6000935a82519361162d8584612d40565b61163683612137565b60208501526040850151956116826effffffffffffffffffffffffffffff8860c08901511760608901511760808901511760a08901511761010089015117610120890151171115612855565b6116ad86610100604082015160608301510160808301510160a08301510160c0830151019101510290565b906116bb88838888856130f7565b976116e26116de6116d38a516001600160a01b031690565b60208b015190613ffc565b1590565b61180a575a8503116117b8576060926001600160a01b0361170e60e05a9a01516001600160a01b031690565b16151590816117b0575b50611779575b509360806117559460a061175095610579999561175c99604087015260608601525a9003910135019101525a906120af565b6128a0565b6064900490565b604051938493846040919493926060820195825260208201520152565b8198506105799692508460a06117509561179e899561175c9a6117559a608097613c92565b9c90969a50949850955050945061171e565b905038611718565b60408051631101335b60e11b815260048101929092526024820152601e60448201527f41413236206f76657220766572696669636174696f6e4761734c696d69740000606482015280608481015b0390fd5b61180682604051918291631101335b60e11b835260048301608091815260406020820152601a60408201527f4141323520696e76616c6964206163636f756e74206e6f6e636500000000000060608201520190565b346103b95761187961187036610ed6565b92919091612b9d565b90610579604051928392151583526040602084015260408301906104a0565b346103b95760203660031901126103b9576001600160a01b036004356118bd816103ef565b16600052600060205265ffffffffffff604060002060018154910154908260405193849360a0850193855260ff8116151560208601526001600160701b03808260081c1616604086015263ffffffff808260781c1616606086015260981c161660808301520390f35b346103b95761194861193736610940565b809291611942612241565b506122c8565b6000198201918211610d2a576105799161196191611ef1565b51604051918291602083526020830190610d2f565b1561197d57565b606460405162461bcd60e51b815260206004820152601a60248201527f6d757374207370656369667920756e7374616b652064656c61790000000000006044820152fd5b156119c857565b606460405162461bcd60e51b815260206004820152601c60248201527f63616e6e6f7420646563726561736520756e7374616b652074696d65000000006044820152fd5b634e487b7160e01b600052601160045260246000fd5b906113888201809211610d2a57565b9060018201809211610d2a57565b91908201809211610d2a57565b15611a5357565b606460405162461bcd60e51b815260206004820152601260248201527f6e6f207374616b652073706563696669656400000000000000000000000000006044820152fd5b15611a9e57565b606460405162461bcd60e51b815260206004820152600e60248201527f7374616b65206f766572666c6f770000000000000000000000000000000000006044820152fd5b60405190611aef82610626565b606060408360008152600060208201520152565b60405190611b1082610605565b6000608083604051611b2181610642565b83815283602082015283604082015283606082015283838201528360a08201528360c08201528360e0820152836101008201528361012082015281528260208201528260408201528260608201520152565b90359061011e19813603018212156103b9570190565b6000198114610d2a5760010190565b93929093845190606082015181519081611d83575b505050505a900360808401510192600093845a835194611bcc86614949565b92611be160e08801516001600160a01b031690565b6001600160a01b038116919082611cb15750505050611c0785516001600160a01b031690565b925b5a8203019460a06060820151910151019160808501928351870390818111611c9c575b505085029460408501938451878110600014611c7157505050611c6d939450611c556000613b89565b5a9003905101905183611c688295614a42565b614973565b9190565b611c6d969295508780955060019450611c8c92910390613e69565b50611c976000613b89565b6149db565b9196916064919003600a020401943880611c2c565b95928051611cc2575b505050611c09565b9091929950611cd082613b89565b5a9260a089015190803b15611d7f579183929187848196948f611d25604051998a97889687947f7c627b2100000000000000000000000000000000000000000000000000000000865202908660048601613b98565b0393f19182611d65575b5050611d5957611806611d40613b45565b6040519182916365c8fd4d60e01b835260048301613bca565b5a900396388080611cba565b611d72611d78928261067b565b8061133f565b3880611d2f565b8380fd5b600080949360206001600160a01b0383965116910192f115611da85738808080611bad565b611806611db3613b45565b6040519182917f462c71b20000000000000000000000000000000000000000000000000000000083526020600484015260248301906104a0565b67ffffffffffffffff81116106215760051b60200190565b60405190610100820182811067ffffffffffffffff82111761062157604052606060e08360008152600060208201526000604082015260008382015260006080820152600060a0820152600060c08201520152565b90611e6482611ded565b611e71604051918261067b565b8281528092611e82601f1991611ded565b019060005b828110611e9357505050565b602090611e9e611e05565b82828501015201611e87565b634e487b7160e01b600052603260045260246000fd5b90821015611ed7576104f39160051b810190611b73565b611eaa565b60405190611eeb60208361067b565b60008252565b8051821015611ed75760209160051b010190565b611f0e82611e5a565b9160005b818110611f1f5750505090565b611f2a818385611ec0565b6020906000604051611f3c848261067b565b52611f45611e05565b50600060028054146120825790612037600194939260028055611f66611b03565b92611f708161333b565b84611f7b85836128b6565b929091935a9088606081015191611f956060820182612618565b8a6003821161207a575b7fffffffff0000000000000000000000000000000000000000000000000000000016638dd7712f60e01b0361206257505061125385638dd7712f60e01b9261123f6120029886015191604051958694850152604060248501526064840190612e6b565b93905b60806060980151986120156106bc565b998a52890152604088015285870152608086015260a0850152151560c0840152565b60e08201526120466001600255565b6120508287611ef1565b5261205b8186611ef1565b5001611f12565b612073965061125392503691610716565b9390612005565b508135611f9f565b80633ee5aeb560e01b60049252fd5b600319810191908211610d2a57565b600019810191908211610d2a57565b91908203918211610d2a57565b3d156120e7573d906120cd826106fa565b916120db604051938461067b565b82523d6000602084013e565b606090565b156120f357565b606460405162461bcd60e51b815260206004820152601260248201527f6661696c656420746f20776974686472617700000000000000000000000000006044820152fd5b60208101356121f961214c6040840184612618565b908160405191823720916121eb6121666060860186612618565b90816040519182372060c086013560a0870135608088013561219461218e60e08b018b612618565b90614b74565b936040519889976001600160a01b0360208a019c35168c94919260e096939998979491996001600160a01b0361010088019b168752602087015260408601526060850152608084015260a083015260c08201520152565b03601f19810183528261067b565b5190206040805160208101928352309181019190915246606082015261222281608081016121eb565b51902090565b604051906122358261065f565b60006020838281520152565b6040519061224e82610605565b8160405161225b81610605565b60008152600060208201526000604082015260006060820152606060808201528152612285612228565b6020820152612292612228565b604082015261229f612228565b60608201526080604051916122b38361065f565b600083526122bf612228565b60208401520152565b6122d182611ded565b916122df604051938461067b565b808352601f196122ee82611ded565b0160005b81811061233857505060005b81811061230b5750505090565b8061231c6115ac6001938587611ec0565b6123268287611ef1565b526123318186611ef1565b50016122fe565b602090612343612241565b828288010152016122f2565b908092918237016000815290565b356104f3816103ef565b6040519061237660208361067b565b6000808352366020840137565b9061238d826106fa565b61239a604051918261067b565b82815280926123ab601f19916106fa565b0190602036910137565b906123c891969594939296610550611ae2565b6001600160a01b036123da8680611b73565b6124036020880135916123ec836103ef565b6123f4611b03565b906123fe8161333b565b6128b6565b5050501615612415576104f39461391a565b5050505050612422612367565b6040519061242f82610626565b6000825260006020830152604082015290565b7f2da466a7b24304f47e87fa2e1e5a81b9831ce54fec19055ce277ca2f39ba42c460206001600160a01b036124773485613e69565b936040519485521692a2565b1561248a57565b606460405162461bcd60e51b815260206004820152601160248201527f616c726561647920756e7374616b696e670000000000000000000000000000006044820152fd5b9065ffffffffffff8091169116019065ffffffffffff8211610d2a57565b156124f357565b606460405162461bcd60e51b815260206004820152601460248201527f4e6f207374616b6520746f2077697468647261770000000000000000000000006044820152fd5b1561253e57565b606460405162461bcd60e51b815260206004820152601d60248201527f6d7573742063616c6c20756e6c6f636b5374616b6528292066697273740000006044820152fd5b1561258957565b606460405162461bcd60e51b815260206004820152601b60248201527f5374616b65207769746864726177616c206973206e6f742064756500000000006044820152fd5b156125d457565b606460405162461bcd60e51b815260206004820152601860248201527f6661696c656420746f207769746864726177207374616b6500000000000000006044820152fd5b903590601e19813603018212156103b9570180359067ffffffffffffffff82116103b9576020019181360383136103b957565b906014116103b95790601490565b90929192836034116103b95783116103b957603401916033190190565b356bffffffffffffffffffffffff19811692919060148210612696575050565b6bffffffffffffffffffffffff1960149290920360031b82901b16169150565b604051906126c38261065f565b6003546001600160a01b031682526040516020836126e08361065f565b6004548352600554828401520152565b6126f8612241565b50612701611b03565b9061270b8161333b565b61271582826128b6565b509190926127238385613e91565b61274061273b60e0835101516001600160a01b031690565b613fb9565b9161276e61275a61273b84516001600160a01b0390511690565b91612763612228565b506040810190612618565b90601482106128495761279061278a6127969361273b9361264b565b90612676565b60601c90565b916001600160a01b0386169460808201519660606040840151930151926127bb61069d565b98895260208901526040880152606087015260808601526127da6126b6565b938015158061283e575b61280c575b506127f261069d565b948552602085015260408401526060830152608082015290565b90935061281881613fb9565b6128326128236106cc565b6001600160a01b039093168352565b602082015292386127e9565b5060018114156127e4565b50506127966000613fb9565b1561285c57565b606460405162461bcd60e51b815260206004820152601860248201527f41413934206761732076616c756573206f766572666c6f7700000000000000006044820152fd5b90607382029180830460731490151715610d2a57565b90916000915a938051916128ca8382612d40565b6128d381612137565b602083015260408301519561291f6effffffffffffffffffffffffffffff8860c08701511760608701511760808701511760a08701511761010087015117610120870151171115612855565b61294a84610100604082015160608301510160808301510160a08301510160c0830151019101510290565b6129588882868660006130f7565b9761297b6116de61297088516001600160a01b031690565b602089015190613ffc565b612a72575a830311612a1e576060906001600160a01b036129a760e05a9801516001600160a01b031690565b16151580612a16575b6129e3575b6117509360a06104f39794879460809460406117559a015260608601525a9003910135019101525a906120af565b965050928260808360a06104f397612a048b61175599611750996000613c92565b9b9095985093509497505093506129b5565b5060016129b0565b604051631101335b60e11b815280611806600060048301608091815260406020820152601e60408201527f41413236206f76657220766572696669636174696f6e4761734c696d6974000060608201520190565b604051631101335b60e11b815280611806600060048301608091815260406020820152601a60408201527f4141323520696e76616c6964206163636f756e74206e6f6e636500000000000060608201520190565b908060209392818452848401376000828201840152601f01601f1916010190565b6040906001600160a01b036104f395931681528160208201520191612ac6565b6040513d6000823e3d90fd5b908151811015611ed7570160200190565b81601f820112156103b9578051612b3a816106fa565b92612b48604051948561067b565b818452602082840101116103b9576104f3916020808501910161047d565b9190916040818403126103b9578051612b7e816115c5565b92602082015167ffffffffffffffff81116103b9576104f39201612b24565b91926000936001600160a01b036060941691823b156103b957612c1d93600080946040518097819682957f850aaf620000000000000000000000000000000000000000000000000000000084526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001660048501612ae7565b0393f19081612cd7575b5061096b575050612c366120bc565b906004825110612cc857612c52612c4d8351612091565b612383565b60045b8351811015612cb25780612c94612c6e60019387612b13565b517fff000000000000000000000000000000000000000000000000000000000000001690565b612cab612ca083612091565b9160001a9185612b13565b5301612c55565b5061096b91925060208082518301019101612b66565b9050612cd2612367565b600091565b80611d726000612ce69361067b565b38612c27565b61040b33612442565b15612cfc57565b606460405162461bcd60e51b815260206004820152601d60248201527f4141393320696e76616c6964207061796d6173746572416e64446174610000006044820152fd5b612dd790612d5d612d508261235d565b6001600160a01b03168452565b60208101356020840152612d8a6080820135906fffffffffffffffffffffffffffffffff8260801c921690565b6060850152604084015260a081013560c0840152612dc160c0820135906fffffffffffffffffffffffffffffffff8260801c921690565b61010085015261012084015260e0810190612618565b908115612e1357612dfb8260e092612df6603461040b97961015612cf5565b61404e565b60a085015260808401526001600160a01b0316910152565b505060a081600060e0819401528260808201520152565b908160209103126103b9575190565b9035601e19823603018112156103b957016020813591019167ffffffffffffffff82116103b95781360383136103b957565b6104f391612e8981612e7c84610400565b6001600160a01b03169052565b60208201356020820152612f1f612f13612eda612ebf612eac6040870187612e39565b6101206040880152610120870191612ac6565b612ecc6060870187612e39565b908683036060880152612ac6565b6080850135608085015260a085013560a085015260c085013560c0850152612f0560e0860186612e39565b9085830360e0870152612ac6565b92610100810190612e39565b91610100818503910152612ac6565b612f4660409295949395606083526060830190612e6b565b9460208201520152565b60a0906104f39392815260606020820152600d60608201527f4141323320726576657274656400000000000000000000000000000000000000608082015281604082015201906104a0565b92909161301e6020600095855193612fe860e0612fbf87516001600160a01b031690565b96612fda8a8c612fd26040890189612618565b9290916140ac565b01516001600160a01b031690565b91886001600160a01b038194161598896130bc575b85015191604051968795869485936306608bdf60e21b855260048501612f2e565b03926001600160a01b03881690f185918161308b575b5061305f5784613042613b45565b906118066040519283926365c8fd4d60e01b845260048401612f50565b93919261306a575050565b613087906001600160a01b03166000526000602052604060002090565b5050565b6130ae91925060203d6020116130b5575b6130a6818361067b565b810190612e2a565b9038613034565b503d61309c565b93506130db876001600160a01b03166000526000602052604060002090565b5480156130ee575084815b949050612ffd565b859082036130e6565b949291939060206131679186519361312e60e061311b87516001600160a01b031690565b96612fda8b8d612fd26040890189612618565b916001600160a01b0360009316159889613234575b84600091015191604051968795869485936306608bdf60e21b855260048501612f2e565b03926001600160a01b03881690f160009181613213575b5061318c5785613042613b45565b94929361319857505050565b6131b5906001600160a01b03166000526000602052604060002090565b918254908183116131c65750039055565b60408051631101335b60e11b815260048101929092526024820152601760448201527f41413231206469646e2774207061792070726566756e640000000000000000006064820152608490fd5b61322d91925060203d6020116130b5576130a6818361067b565b903861317e565b9250613253866001600160a01b03166000526000602052604060002090565b548781111561326b5750600084815b94915050613143565b846000918903613262565b9160005b828110156133355761328a611b03565b6000908260051b860135605e198736030181121561333157906132c560019493928801916132bb6105638480611b73565b6123fe8380611b73565b50505060208101906132e56132d98361235d565b6001600160a01b031690565b1561332957826133036132f8829461235d565b926040810190612618565b91906133146040518094819361234f565b03925af1506133216120bc565b505b0161327a565b505050613323565b8280fd5b50915050565b61336e9061334c6040820182612618565b9161336681359161335c836103ef565b60e0810190612618565b93909261434d565b80516133775750565b61180690604051918291631101335b60e11b8352600060048401526040602484015260448301906104a0565b9392916133c9906001600160a01b036040931686526060602087015260608601906104a0565b930152565b939490946133da611ae2565b5060009280156136335761341f93506133f1611edc565b509160006134015a8860026146e8565b5a906040519687928392631efc84dd60e31b84528c600485016133a3565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1918215613587576000948593613612575b508294809381156135ef57505061347d909592919394955b85611a3f565b806001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016965b846134b588856120af565b106135c5575a6134c488611a22565b1161358c57918695939189959360008c8b6134f76134ee6134e8886135179f611a3f565b60011c90565b809b60026146e8565b835a936040519e8f9586948593631efc84dd60e31b8552600485016133a3565b03925af198891561358757600090819a613561575b501561354c5750505061353e846120a0565b95915b9390929495916134aa565b9396509461355b919750611a31565b94613541565b9061357f929a503d8091833e613577818361067b565b810190612b66565b98903861352c565b612b07565b7fe2c4d0be0000000000000000000000000000000000000000000000000000000060005260048290526024879052604483905260646000fd5b9650965050919550506135e791506135db6106db565b93845215156020840152565b604082015290565b965096505095505050506135e76136046106db565b600081529215156020840152565b90925061362991943d8091833e613577818361067b565b939093913861345f565b50613665915a91846136475a8960026146e8565b5a906040519687928392631efc84dd60e31b84528d600485016133a3565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1938415613587578580956136cb575b505083946136b381945a906120af565b9481156135ef57505061347d90959291939495613477565b909194506136e49295503d8091833e613577818361067b565b9390939238806136a3565b939490946136fb611ae2565b50600092801561387c576137229350613712611edc565b509160006134015a8860036146e8565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af191821561358757600094859361385b575b508294809381156135ef57505061377f9095929193949585611a3f565b806001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016965b846137b788856120af565b106135c5575a6137c688611a22565b1161358c57918695939189959360008c8b6134f76137ea6134e8886137f39f611a3f565b809b60036146e8565b03925af198891561358757600090819a61383d575b50156138285750505061381a846120a0565b95915b9390929495916137ac565b93965094613837919750611a31565b9461381d565b90613853929a503d8091833e613577818361067b565b989038613808565b90925061387291943d8091833e613577818361067b565b9390939138613762565b50613890915a91846136475a8960036146e8565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1938415613587578580956138f6575b505083946138de81945a906120af565b9481156135ef57505061377f90959291939495613477565b9091945061390f9295503d8091833e613577818361067b565b9390939238806138ce565b93949094613926611ae2565b506000928015613aa75761394d935061393d611edc565b509160006134015a8860016146e8565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1918215613587576000948593613a86575b508294809381156135ef5750506139aa9095929193949585611a3f565b806001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016965b846139e288856120af565b106135c5575a6139f188611a22565b1161358c57918695939189959360008c8b6134f7613a156134e888613a1e9f611a3f565b809b60016146e8565b03925af198891561358757600090819a613a68575b5015613a5357505050613a45846120a0565b95915b9390929495916139d7565b93965094613a62919750611a31565b94613a48565b90613a7e929a503d8091833e613577818361067b565b989038613a33565b909250613a9d91943d8091833e613577818361067b565b939093913861398d565b50613abb915a91846136475a8960016146e8565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af193841561358757858095613b21575b50508394613b0981945a906120af565b9481156135ef5750506139aa90959291939495613477565b90919450613b3a9295503d8091833e613577818361067b565b939093923880613af9565b3d6108008111613b6a575b604051906020818301016040528082526000602083013e90565b50610800613b50565b634e487b7160e01b600052602160045260246000fd5b60031115613b9357565b613b73565b90949392946003811015613b9357606092613bc09183526080602084015260808301906104a0565b9460408201520152565b9060a06104f3926000815260606020820152601460608201527f4141353020706f73744f70207265766572746564000000000000000000000000608082015281604082015201906104a0565b91906040838203126103b957825167ffffffffffffffff81116103b957602091613c41918501612b24565b92015190565b60a0906104f39392815260606020820152600d60608201527f4141333320726576657274656400000000000000000000000000000000000000608082015281604082015201906104a0565b929390915a92815190613caf60e08301516001600160a01b031690565b91613ccd836001600160a01b03166000526000602052604060002090565b8054898110613e14576001600160a01b0360206080600097958d9795613d2f9d9e8a960390550151970151926040519a8b96879586937f52b7512c00000000000000000000000000000000000000000000000000000000855260048501612f2e565b03931686f19384600091600096613ded575b50613d6c5785613d4f613b45565b906118066040519283926365c8fd4d60e01b845260048401613c47565b9491925a900311613d7a5750565b60408051631101335b60e11b815260048101929092526024820152602760448201527f41413336206f766572207061796d6173746572566572696669636174696f6e4760648201527f61734c696d697400000000000000000000000000000000000000000000000000608482015260a490fd5b909550613e0d91503d806000833e613e05818361067b565b810190613c16565b9438613d41565b61180689604051918291631101335b60e11b835260048301608091815260406020820152601e60408201527f41413331207061796d6173746572206465706f73697420746f6f206c6f77000060608201520190565b6001600160a01b0316600052600060205260406000208054918201809211610d2a5781905590565b613ea26001600160a01b0391614a85565b9116613f6d57613f1957613ebd6001600160a01b0391614a85565b5016613ec557565b604051631101335b60e11b815280611806600060048301608091815260406020820152601460408201527f41413334207369676e6174757265206572726f7200000000000000000000000060608201520190565b604051631101335b60e11b815280611806600060048301608091815260406020820152601760408201527f414132322065787069726564206f72206e6f742064756500000000000000000060608201520190565b6084604051631101335b60e11b81526000600482015260406024820152601460448201527f41413234207369676e6174757265206572726f720000000000000000000000006064820152fd5b906001600160a01b03613fca612228565b9216600052600060205263ffffffff6001604060002001546001600160701b038160081c16845260781c166020830152565b6001600160a01b0316600052600160205267ffffffffffffffff61403a8260401c6040600020906001600160c01b0316600052602052604060002090565b9182549261404784611b89565b9055161490565b9091826014116103b957813591836024116103b9576014810135936034116103b95760609290921c92608090811c9260240135901c90565b908160209103126103b957516104f3816103ef565b9160206104f3938181520191612ac6565b929091816140bb575b50505050565b8251516001600160a01b031693843b61430057604084510151602060405180927f570e1a36000000000000000000000000000000000000000000000000000000008252816000816141108a8a6004840161409b565b03926001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690f1908115613587576000916142d1575b506001600160a01b03811695861561427c576001600160a01b0316809603614227573b156141da575061279061278a7fd51a9c61267aa6196961883ecf5ff2da6619c37dac0fa92122513fb32c032d2d936141a79361264b565b602083810151935160e00151604080516001600160a01b039485168152939091169183019190915290a3388080806140b5565b60408051631101335b60e11b815260048101929092526024820152602060448201527f4141313520696e6974436f6465206d757374206372656174652073656e6465726064820152608490fd5b61180682604051918291631101335b60e11b835260048301608091815260406020820152602060408201527f4141313420696e6974436f6465206d7573742072657475726e2073656e64657260608201520190565b61180683604051918291631101335b60e11b835260048301608091815260406020820152601b60408201527f4141313320696e6974436f6465206661696c6564206f72204f4f47000000000060608201520190565b6142f3915060203d6020116142f9575b6142eb818361067b565b810190614086565b3861414d565b503d6142e1565b60408051631101335b60e11b815260048101929092526024820152601f60448201527f414131302073656e64657220616c726561647920636f6e7374727563746564006064820152608490fd5b50929192159081614402575b506143c5576014811015614372575b50506104f3611edc565b6014116103b9573560601c3b1561438a573880614368565b60405161439860408261067b565b601b81527f41413330207061796d6173746572206e6f74206465706c6f7965640000000000602082015290565b50506040516143d560408261067b565b601981527f41413230206163636f756e74206e6f74206465706c6f79656400000000000000602082015290565b90503b1538614359565b610120813603126103b95761441f6106ea565b9061442981610400565b825260208101356020830152604081013567ffffffffffffffff81116103b957614456903690830161074d565b6040830152606081013567ffffffffffffffff81116103b95761447c903690830161074d565b60608301526080810135608083015260a081013560a083015260c081013560c083015260e081013567ffffffffffffffff81116103b9576144c0903690830161074d565b60e08301526101008101359067ffffffffffffffff82116103b9576144e79136910161074d565b61010082015290565b60041115613b9357565b91926fffffffffffffffffffffffffffffffff196034959481936bffffffffffffffffffffffff199060601b168552166014840152166024820152614548825180936020868501910161047d565b010190565b80516001600160a01b031682526104f391602082015160208201526101006145ce61459e61458c604086015161012060408701526101208601906104a0565b606086015185820360608701526104a0565b6080850151608085015260a085015160a085015260c085015160c085015260e085015184820360e08601526104a0565b920151906101008184039101526104a0565b60806101a09161012081516145fe8682516001600160a01b03169052565b602081015160208701526040810151604087015260608101516060870152838101518487015260a081015160a087015260c081015160c087015261465260e082015160e08801906001600160a01b03169052565b61010081015161010087015201516101208501526020810151610140850152604081015161016085015260608101516101808501520151910152565b6146be6146b3610200939695949660008452610220602085015261022084019061454d565b9560408301906145e0565b0152565b610200906146be6146b3600094969596858452610220602085015261022084019061454d565b6146f0611b03565b6147026146fd8480611b73565b61440c565b61470b836144f0565b600283146148645761471c836144f0565b600383146147dd575050806147326001926144f0565b1461477c5760405162461bcd60e51b815260206004820152600c60248201527f496e76616c6964206d6f646500000000000000000000000000000000000000006044820152606490fd5b806121eb6147a76147a061479560206104f3960161235d565b936040810190612618565b3691610716565b936040519485937f44403473000000000000000000000000000000000000000000000000000000006020860152602485016133a3565b9150926fffffffffffffffffffffffffffffffff61482461481d614804866104f397611b73565b608001356fffffffffffffffffffffffffffffffff1690565b9260801b90565b91161760808201526121eb6040519384927fc579f76b000000000000000000000000000000000000000000000000000000006020850152602484016146c2565b9150926121eb906fffffffffffffffffffffffffffffffff19846148ef6148e161489d61489761335c856104f39b611b73565b9061404e565b9291905060609060e08a0195603487515111614925575b5060405196879460801b16906fffffffffffffffffffffffffffffffff198960801b1690602086016144fa565b03601f19810184528361067b565b526040519485937f21e60b370000000000000000000000000000000000000000000000000000000060208601526024850161468e565b61494291925061493b61335c826147a093611b73565b8091612659565b90386148b4565b61012061010082015191015180821461496f5748018082101561496a575090565b905090565b5090565b9190917f49628fd1471006c1482da88028e9ce4dbb080b815c9b0344d39e5a8e6ec1419f608060208301519251946001600160a01b038651169460206001600160a01b0360e089015116970151916040519283526000602084015260408301526060820152a4565b9060807f49628fd1471006c1482da88028e9ce4dbb080b815c9b0344d39e5a8e6ec1419f9160208401519351956001600160a01b038751169560206001600160a01b0360e08a015116980151926040519384521515602084015260408301526060820152a4565b60208101519051907f67b4fa9642f42120bf031f3051d1824b0fe25627945b27b8a6a65d5761d5482e6020806001600160a01b03855116940151604051908152a3565b8015614b6b57600060408051614a9a81610626565b828152826020820152015265ffffffffffff8160a01c168015614b5e575b614b4090614b27614acf614ada614acf8660d01c90565b65ffffffffffff1690565b92614aff6001600160a01b03614aee6106db565b971687906001600160a01b03169052565b614b156020870194859065ffffffffffff169052565b65ffffffffffff166040860181905290565b4211908115614b43575b5091516001600160a01b031690565b91565b51614b56915065ffffffffffff16614acf565b421038614b31565b5065ffffffffffff614ab8565b50600090600090565b81604051918237209056fea2646970667358221220441b8fdf46a1f4ccd0f03d8c06c651814a9e44483e5f099d98fa1af1b70c050864736f6c634300081c003360808060405234601557610179908161001b8239f35b600080fdfe6080600436101561000f57600080fd5b60003560e01c63570e1a361461002457600080fd5b3461013e57602036600319011261013e5760043567ffffffffffffffff811161013e573660238201121561013e57806004013567ffffffffffffffff811161013e57366024828401011161013e576000928160141161013a5760131982019167ffffffffffffffff831161012657600b8101601f19908116603f0116820167ffffffffffffffff8111838210176101125760246020959387600c819795829560405286845289840196603889018837830101525193013560601c5af19051901561010a575b60209073ffffffffffffffffffffffffffffffffffffffff60405191168152f35b5060006100e9565b602486634e487b7160e01b81526041600452fd5b602485634e487b7160e01b81526041600452fd5b8380fd5b600080fdfea26469706673582212209dffb155e295aac90dab6d90a7e1c0cbfa99a678d78a40c2d0529fc532d9723164736f6c634300081c0033", "sourceMap": "113:1074:21:-:0;;;;;;;238:27;;;;-1:-1:-1;;;;;238:27:21;;;;;;;;;;;;;;;;;;;;;;113:1074;;-1:-1:-1;;;;;;113:1074:21;-1:-1:-1;;;;;113:1074:21;;;;;;;;;;;;;517:29;;238:27;517:29;113:1074;;;;;;;238:27;113:1074;;;238:27;113:1074;;;;;238:27;113:1074;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { "object": "0x6080604052600436101561001257600080fd5b60003560e01c63c18f52261461002757600080fd5b346102b55760403660031901126102b55760043573ffffffffffffffffffffffffffffffffffffffff81168091036102b55760243567ffffffffffffffff81116102b557366023820112156102b5578060040135610084816102f2565b9161009260405193846102d0565b8183526024602084019260051b820101903682116102b55760248101925b82841061023d57845185876100c4836102f2565b926100d260405194856102d0565b8084526100e1601f19916102f2565b0160005b81811061022c57505060005b82518110156101c457600190606060008061016f73ffffffffffffffffffffffffffffffffffffffff82541661017d61012a878b61034b565b5160405193849160208301947f850aaf62000000000000000000000000000000000000000000000000000000008652602484015260406044840152606483019061030a565b03601f1981018452836102d0565b82885a935193f1156101a6575b610194828761034b565b5261019f818661034b565b50016100f1565b503d604051906020818301016040528082526000602083013e61018a565b836040518091602082016020835281518091526040830190602060408260051b8601019301916000905b8282106101fd57505050500390f35b9193600191939550602061021c8192603f198a8203018652885161030a565b96019201920185949391926101ee565b8060606020809388010152016100e5565b833567ffffffffffffffff81116102b5578201366043820112156102b55760248101359167ffffffffffffffff83116102ba57604051610287601f8501601f1916602001826102d0565b83815236604484860101116102b55760006020858196604483970183860137830101528152019301926100b0565b600080fd5b634e487b7160e01b600052604160045260246000fd5b90601f8019910116810190811067ffffffffffffffff8211176102ba57604052565b67ffffffffffffffff81116102ba5760051b60200190565b919082519283825260005b848110610336575050826000602080949584010152601f8019910116010190565b80602080928401015182828601015201610315565b805182101561035f5760209160051b010190565b634e487b7160e01b600052603260045260246000fdfea264697066735822122062975c4d47768efffe557c10cf10ecfd39a72d039f0f35a49aec99a5ff87f9bb64736f6c634300081c0033", "sourceMap": "113:1074:21:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;113:1074:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;743:13;;113:1074;775:3;113:1074;;758:15;;;;;113:1074;794:23;113:1074;;428:53;;113:1074;428:53;;113:1074;855:55;902:7;;;;:::i;:::-;;113:1074;;855:55;;;113:1074;855:55;;;113:1074;855:55;;113:1074;855:55;;428:53;113:1074;428:53;;;;;;;;;:::i;:::-;855:55;113:1074;;855:55;;;;;;:::i;:::-;966:9;;;378:118:13;;;;994:8:21;990:101;;775:3;1104:31;;;;:::i;:::-;;;;;;:::i;:::-;;113:1074;743:13;;990:101;1204:349:13;;113:1074:21;1204:349:13;;113:1074:21;1204:349:13;;;;113:1074:21;1204:349:13;;;;113:1074:21;;1204:349:13;;;990:101:21;;758:15;;113:1074;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;113:1074:21;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;113:1074:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;428:53;113:1074;;428:53;;;;;;;;;;;;:::o;:::-;-1:-1:-1;;;428:53:21;;;;;;;", "linkReferences": {} }, "methodIdentifiers": { "simulateEntryPoint(address,bytes[])": "c18f5226" }, "rawMetadata": "{\"compiler\":{\"version\":\"0.8.28+commit.7893614a\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"PimlicoSimulationV7Deployed\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"ep\",\"type\":\"address\"},{\"internalType\":\"bytes[]\",\"name\":\"data\",\"type\":\"bytes[]\"}],\"name\":\"simulateEntryPoint\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"\",\"type\":\"bytes[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/v07/PimlicoEntryPointSimulationsV7.sol\":\"PimlicoEntryPointSimulationsV7\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1000},\"remappings\":[\":@openzeppelin/contracts-51/=lib/openzeppelin-contracts-51/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":account-abstraction-v6/=lib/account-abstraction-v6/contracts/\",\":account-abstraction-v7/=lib/account-abstraction-v7/contracts/\",\":account-abstraction-v8/=lib/account-abstraction-v8/contracts/\",\":account-abstraction/=lib/account-abstraction-v6/contracts/\",\":bulk/=lib/bulk/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":halmos-cheatcodes/=lib/openzeppelin-contracts-51/lib/halmos-cheatcodes/src/\",\":lib/openzeppelin-contracts-51/=lib/openzeppelin-contracts-51/\",\":openzeppelin-contracts-51/=lib/openzeppelin-contracts-51/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":p256-verifier/=lib/bulk/lib/p256-verifier/\",\":solady/=lib/solady/src/\"],\"viaIR\":true},\"sources\":{\"lib/account-abstraction-v7/contracts/core/Helpers.sol\":{\"keccak256\":\"0x6247e011a6cb0b263b3aa098822977181674d91b62e5bdfe04c6e66f72da25d6\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://ca829a69b3fbc74fec8e140d42a2bf93bc3512609272f031c846470f61f0ab7e\",\"dweb:/ipfs/QmP3r3MBgAN39KeVB1rCGJWwcBcotNt26ALtAR54poQ1Jc\"]},\"lib/account-abstraction-v7/contracts/core/NonceManager.sol\":{\"keccak256\":\"0x1f951786ce6f171e7ed0242fee73ee4a205c7523404ee6cffca48b8c64ea5fe9\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://a602bf2274d478dae7a532cca31f8179131808c324cc26ece5c7e87c5a1015a6\",\"dweb:/ipfs/QmaaSyw5GGbAWzUhAPCtsb38P3MmaVr1ngp61PYHCU2a5a\"]},\"lib/account-abstraction-v7/contracts/core/SenderCreator.sol\":{\"keccak256\":\"0xeb95afb6e4cf921c1ed105ecb9f549ca46bee57f68acd1d2f4f84607ac0db5c5\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://d2ac91562f1fcabe4809a1b4256895efebcf46f89e08336a6c09ee2d29733238\",\"dweb:/ipfs/QmPsQnPcCzioPwVtUhxkbnwKPC1bnhHSbAwK9GXVpjN3mH\"]},\"lib/account-abstraction-v7/contracts/core/StakeManager.sol\":{\"keccak256\":\"0x673eb19600058d8642605ca409c9e1d4cab13735564b856270b92c330ffb1b8d\",\"license\":\"GPL-3.0-only\",\"urls\":[\"bzz-raw://06599c57c7075ee8eb5f1710fccca3eb322876b968ec271e1fb34af41510ab2c\",\"dweb:/ipfs/QmVsDEjmZYtzgXa4AYKxbQEYQVh6NBq8GmFJCariBUqK4G\"]},\"lib/account-abstraction-v7/contracts/core/UserOperationLib.sol\":{\"keccak256\":\"0x9d50ece985d35f82e33e5da417595c86fac10449e3d10895d08363d33aad454b\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://b1d11cc364c8bf7ed5388268c895b5ffed16e87dfbcb320ddeeba5e7974315dc\",\"dweb:/ipfs/QmYSpvjxEjweietQrYZagwQ52ipy7eXx4rwvnTzXKeGeMS\"]},\"lib/account-abstraction-v7/contracts/interfaces/IAccount.sol\":{\"keccak256\":\"0x38710bec0cb20ff4ceef46a80475b5bdabc27b7efd2687fd473db68332f61b78\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://dea7a723e1ef852e8764e69914a345d2e8bc5e13facfc9d5c29d791cb4ab0020\",\"dweb:/ipfs/QmU8dYgyF4DBJXFqjwLAtnE3q8q259ChfoEk9a6wyhHzEP\"]},\"lib/account-abstraction-v7/contracts/interfaces/IAccountExecute.sol\":{\"keccak256\":\"0xd3dc32dde1add1fb6377f939ceff6be31c2e21343522311f7b88db666be9ee6c\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://5b8f065171bd32e23b306868189c730f849ce6147f753c59e396e7afcf384577\",\"dweb:/ipfs/QmZpDRNEZ9YNgGgyLQo5yM4bB1FNbtnfDABsChbgSQKXUh\"]},\"lib/account-abstraction-v7/contracts/interfaces/IAggregator.sol\":{\"keccak256\":\"0xf100d6fcc0c3b450b13e979b6a42c628c292a1bc340eccc2e7796b80e3975588\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://192938b5b27234d35c8098a319e879363c79f750eea4d0e409dc889a8ce5b155\",\"dweb:/ipfs/QmURpaJFPqEtkKP2ngBsgZhAGN8wAWh5XQpYmCkiz4Urz5\"]},\"lib/account-abstraction-v7/contracts/interfaces/IEntryPoint.sol\":{\"keccak256\":\"0x1972a5fcb3a808b58c85af5741949ef6af11ab0debd3ae8c708171ae1ae0d0c4\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://baa9837ae73b9e2362a47d42d081d7c0f3d8e878e5edb381117d94a6968949c9\",\"dweb:/ipfs/QmUmo6FUE7fv5z1WzW1YFjxp8PqaeN2JrEee9au59w3Xhe\"]},\"lib/account-abstraction-v7/contracts/interfaces/INonceManager.sol\":{\"keccak256\":\"0xd575af0f6ebbd5f0b2933307d44cd7b4e03a69f4b817a67db5409bd3c89aeecb\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://3b1e2dea9b05cfba9d13339ed16d96457dc861013cc4f3f35b71a80f82448db3\",\"dweb:/ipfs/QmVaGy5uGDMSiU2SzyokTjoHFyb39VVG5wtaM9KTnHyZSk\"]},\"lib/account-abstraction-v7/contracts/interfaces/IPaymaster.sol\":{\"keccak256\":\"0x49d8dbf8a85b006bcd89bbc40e4e9e113997cc016007de85263bdae70572d07f\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://bc0d83804c1b795d5c216b3518cd176c48f90db28550f267cbd89746d6b476c8\",\"dweb:/ipfs/QmNdCm4c6hnt7f6Q8q21QjtCNZWWRUaMVEYnQHEv68VnKt\"]},\"lib/account-abstraction-v7/contracts/interfaces/IStakeManager.sol\":{\"keccak256\":\"0xbe5ca9e7f254d031687419e7b96ef48c9c63e9398bbe992dc72ffc6dc14e0a04\",\"license\":\"GPL-3.0-only\",\"urls\":[\"bzz-raw://1fffec71c38627a26fabb423350148009579f092623fb02b471a12d973763a00\",\"dweb:/ipfs/QmRBi31QEYXHj3x1AnQ2jKa2eziZH1b9av396P3b4dw6bj\"]},\"lib/account-abstraction-v7/contracts/interfaces/PackedUserOperation.sol\":{\"keccak256\":\"0x1129b46381db68eddbc5cb49e50664667b66b03c480453858e7b25eabe444359\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://499a948aba60480dba6e25c763b8d918f1c246eb7a3302e04f493e080f3295be\",\"dweb:/ipfs/QmeRhhswf4NACcBKam2PyjpTP2ddSm648kah5kkQJsvwz3\"]},\"lib/account-abstraction-v7/contracts/utils/Exec.sol\":{\"keccak256\":\"0x86b1b1cd11158dddb9d381040c57fdc643c74b5e4eed3e7e036f32452672ad74\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://ad88663b6c76df73cf09a272cf333d038df7bb4c51281284b572bf9b46e1cd77\",\"dweb:/ipfs/QmVKxYF8avyPBtqejVhFCM2CuHsfpsCh7TsPqkBLtrgwJQ\"]},\"lib/openzeppelin-contracts/contracts/utils/ReentrancyGuard.sol\":{\"keccak256\":\"0xf980daa263b661ab8ddee7d4fd833c7da7e7995e2c359ff1f17e67e4112f2236\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7448ab095d6940130bcf76ba47a2eab14148c83119523b93dd89f6d84edd6c02\",\"dweb:/ipfs/QmawrZ4voKQjH3oomXT3Kuheb3Mnmo2VvVpxg8Ne5UJUrd\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0x9e8778b14317ba9e256c30a76fd6c32b960af621987f56069e1e819c77c6a133\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1777404f1dcd0fac188e55a288724ec3c67b45288e49cc64723e95e702b49ab8\",\"dweb:/ipfs/QmZFdC626GButBApwDUvvTnUzdinevC3B24d7yyh57XkiA\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df\",\"dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL\"]},\"src/v07/EntryPoint.sol\":{\"keccak256\":\"0xe67e8ce0af5e518732ca3f3ca14f2f7963547f3a27e6567c2f6b45c70ffb10f9\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://77f0af329d36750a40ab832cb78bbaa2e1133048aeb23bd97c0f61426ecd859c\",\"dweb:/ipfs/QmUJiU774ZM9Wfs7BWtYZ2Xktf9baZQ7QhFsgdLPDJfYni\"]},\"src/v07/EntryPointSimulations.sol\":{\"keccak256\":\"0xc78870c32f604870528b484290626b2e51e294d997831fb19b80f67d8edf9fe7\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://8d3cad5bdb8f861ad110ac68e50a2b5ddaecb63aabe3ab085efcfdd2371dd7b8\",\"dweb:/ipfs/QmZ4eAM9mZfR9YixFnbmThVhwRy2JibAinfbgnoKSYvijW\"]},\"src/v07/IEntryPoint.sol\":{\"keccak256\":\"0xca38cd0a2ed294deb3f36c933de236524a597ffc72da21a925458780d0b13b2d\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://01dc9ca228751a7ba99e72d88c8dd3bfcae6d9bb85180a9ea7efc0550e9237a0\",\"dweb:/ipfs/QmPsEVXWZAZCKWuys3eqShSXCtHZCSc1bYQhHGDHuABYc6\"]},\"src/v07/IEntryPointSimulations.sol\":{\"keccak256\":\"0x49c6650bcbc4d4725aaa3aad66381c1c20b2a5d8b0249dcfa95fc65337d7f0ab\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://2aaf93b6816132dd0e098dbbec2c5ae11f561df8b373645f5d266d2106af9b77\",\"dweb:/ipfs/QmPMKdVZpub1sHSSXmSufmwC5ZfaL3v5GpcNU4QY6Hw6cN\"]},\"src/v07/PimlicoEntryPointSimulationsV7.sol\":{\"keccak256\":\"0x1c66f35a4a3e68de494e7b98319da78691c504d7b00dd178f0a97066d6e2e4c4\",\"urls\":[\"bzz-raw://6ca1adcab2d6f96a93039e3a8e79ba54f03af90ef04b8329778bd8a2ff0d8e22\",\"dweb:/ipfs/QmZunE8jAxiA2E96Qe5gwiwp1usDu7hPWiXX2xPNnWNqoX\"]}},\"version\":1}", "metadata": { "compiler": { "version": "0.8.28+commit.7893614a" }, "language": "Solidity", "output": { "abi": [{ "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "type": "event", "name": "PimlicoSimulationV7Deployed", "anonymous": false }, { "inputs": [{ "internalType": "address payable", "name": "ep", "type": "address" }, { "internalType": "bytes[]", "name": "data", "type": "bytes[]" }], "stateMutability": "nonpayable", "type": "function", "name": "simulateEntryPoint", "outputs": [{ "internalType": "bytes[]", "name": "", "type": "bytes[]" }] }], "devdoc": { "kind": "dev", "methods": {}, "version": 1 }, "userdoc": { "kind": "user", "methods": {}, "version": 1 } }, "settings": { "remappings": ["@openzeppelin/contracts-51/=lib/openzeppelin-contracts-51/contracts/", "@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/", "account-abstraction-v6/=lib/account-abstraction-v6/contracts/", "account-abstraction-v7/=lib/account-abstraction-v7/contracts/", "account-abstraction-v8/=lib/account-abstraction-v8/contracts/", "account-abstraction/=lib/account-abstraction-v6/contracts/", "bulk/=lib/bulk/", "ds-test/=lib/forge-std/lib/ds-test/src/", "erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/", "forge-std/=lib/forge-std/src/", "halmos-cheatcodes/=lib/openzeppelin-contracts-51/lib/halmos-cheatcodes/src/", "lib/openzeppelin-contracts-51/=lib/openzeppelin-contracts-51/", "openzeppelin-contracts-51/=lib/openzeppelin-contracts-51/", "openzeppelin-contracts/=lib/openzeppelin-contracts/", "p256-verifier/=lib/bulk/lib/p256-verifier/", "solady/=lib/solady/src/"], "optimizer": { "enabled": true, "runs": 1000 }, "metadata": { "bytecodeHash": "ipfs" }, "compilationTarget": { "src/v07/PimlicoEntryPointSimulationsV7.sol": "PimlicoEntryPointSimulationsV7" }, "evmVersion": "london", "libraries": {}, "viaIR": true }, "sources": { "lib/account-abstraction-v7/contracts/core/Helpers.sol": { "keccak256": "0x6247e011a6cb0b263b3aa098822977181674d91b62e5bdfe04c6e66f72da25d6", "urls": ["bzz-raw://ca829a69b3fbc74fec8e140d42a2bf93bc3512609272f031c846470f61f0ab7e", "dweb:/ipfs/QmP3r3MBgAN39KeVB1rCGJWwcBcotNt26ALtAR54poQ1Jc"], "license": "GPL-3.0" }, "lib/account-abstraction-v7/contracts/core/NonceManager.sol": { "keccak256": "0x1f951786ce6f171e7ed0242fee73ee4a205c7523404ee6cffca48b8c64ea5fe9", "urls": ["bzz-raw://a602bf2274d478dae7a532cca31f8179131808c324cc26ece5c7e87c5a1015a6", "dweb:/ipfs/QmaaSyw5GGbAWzUhAPCtsb38P3MmaVr1ngp61PYHCU2a5a"], "license": "GPL-3.0" }, "lib/account-abstraction-v7/contracts/core/SenderCreator.sol": { "keccak256": "0xeb95afb6e4cf921c1ed105ecb9f549ca46bee57f68acd1d2f4f84607ac0db5c5", "urls": ["bzz-raw://d2ac91562f1fcabe4809a1b4256895efebcf46f89e08336a6c09ee2d29733238", "dweb:/ipfs/QmPsQnPcCzioPwVtUhxkbnwKPC1bnhHSbAwK9GXVpjN3mH"], "license": "GPL-3.0" }, "lib/account-abstraction-v7/contracts/core/StakeManager.sol": { "keccak256": "0x673eb19600058d8642605ca409c9e1d4cab13735564b856270b92c330ffb1b8d", "urls": ["bzz-raw://06599c57c7075ee8eb5f1710fccca3eb322876b968ec271e1fb34af41510ab2c", "dweb:/ipfs/QmVsDEjmZYtzgXa4AYKxbQEYQVh6NBq8GmFJCariBUqK4G"], "license": "GPL-3.0-only" }, "lib/account-abstraction-v7/contracts/core/UserOperationLib.sol": { "keccak256": "0x9d50ece985d35f82e33e5da417595c86fac10449e3d10895d08363d33aad454b", "urls": ["bzz-raw://b1d11cc364c8bf7ed5388268c895b5ffed16e87dfbcb320ddeeba5e7974315dc", "dweb:/ipfs/QmYSpvjxEjweietQrYZagwQ52ipy7eXx4rwvnTzXKeGeMS"], "license": "GPL-3.0" }, "lib/account-abstraction-v7/contracts/interfaces/IAccount.sol": { "keccak256": "0x38710bec0cb20ff4ceef46a80475b5bdabc27b7efd2687fd473db68332f61b78", "urls": ["bzz-raw://dea7a723e1ef852e8764e69914a345d2e8bc5e13facfc9d5c29d791cb4ab0020", "dweb:/ipfs/QmU8dYgyF4DBJXFqjwLAtnE3q8q259ChfoEk9a6wyhHzEP"], "license": "GPL-3.0" }, "lib/account-abstraction-v7/contracts/interfaces/IAccountExecute.sol": { "keccak256": "0xd3dc32dde1add1fb6377f939ceff6be31c2e21343522311f7b88db666be9ee6c", "urls": ["bzz-raw://5b8f065171bd32e23b306868189c730f849ce6147f753c59e396e7afcf384577", "dweb:/ipfs/QmZpDRNEZ9YNgGgyLQo5yM4bB1FNbtnfDABsChbgSQKXUh"], "license": "GPL-3.0" }, "lib/account-abstraction-v7/contracts/interfaces/IAggregator.sol": { "keccak256": "0xf100d6fcc0c3b450b13e979b6a42c628c292a1bc340eccc2e7796b80e3975588", "urls": ["bzz-raw://192938b5b27234d35c8098a319e879363c79f750eea4d0e409dc889a8ce5b155", "dweb:/ipfs/QmURpaJFPqEtkKP2ngBsgZhAGN8wAWh5XQpYmCkiz4Urz5"], "license": "GPL-3.0" }, "lib/account-abstraction-v7/contracts/interfaces/IEntryPoint.sol": { "keccak256": "0x1972a5fcb3a808b58c85af5741949ef6af11ab0debd3ae8c708171ae1ae0d0c4", "urls": ["bzz-raw://baa9837ae73b9e2362a47d42d081d7c0f3d8e878e5edb381117d94a6968949c9", "dweb:/ipfs/QmUmo6FUE7fv5z1WzW1YFjxp8PqaeN2JrEee9au59w3Xhe"], "license": "GPL-3.0" }, "lib/account-abstraction-v7/contracts/interfaces/INonceManager.sol": { "keccak256": "0xd575af0f6ebbd5f0b2933307d44cd7b4e03a69f4b817a67db5409bd3c89aeecb", "urls": ["bzz-raw://3b1e2dea9b05cfba9d13339ed16d96457dc861013cc4f3f35b71a80f82448db3", "dweb:/ipfs/QmVaGy5uGDMSiU2SzyokTjoHFyb39VVG5wtaM9KTnHyZSk"], "license": "GPL-3.0" }, "lib/account-abstraction-v7/contracts/interfaces/IPaymaster.sol": { "keccak256": "0x49d8dbf8a85b006bcd89bbc40e4e9e113997cc016007de85263bdae70572d07f", "urls": ["bzz-raw://bc0d83804c1b795d5c216b3518cd176c48f90db28550f267cbd89746d6b476c8", "dweb:/ipfs/QmNdCm4c6hnt7f6Q8q21QjtCNZWWRUaMVEYnQHEv68VnKt"], "license": "GPL-3.0" }, "lib/account-abstraction-v7/contracts/interfaces/IStakeManager.sol": { "keccak256": "0xbe5ca9e7f254d031687419e7b96ef48c9c63e9398bbe992dc72ffc6dc14e0a04", "urls": ["bzz-raw://1fffec71c38627a26fabb423350148009579f092623fb02b471a12d973763a00", "dweb:/ipfs/QmRBi31QEYXHj3x1AnQ2jKa2eziZH1b9av396P3b4dw6bj"], "license": "GPL-3.0-only" }, "lib/account-abstraction-v7/contracts/interfaces/PackedUserOperation.sol": { "keccak256": "0x1129b46381db68eddbc5cb49e50664667b66b03c480453858e7b25eabe444359", "urls": ["bzz-raw://499a948aba60480dba6e25c763b8d918f1c246eb7a3302e04f493e080f3295be", "dweb:/ipfs/QmeRhhswf4NACcBKam2PyjpTP2ddSm648kah5kkQJsvwz3"], "license": "GPL-3.0" }, "lib/account-abstraction-v7/contracts/utils/Exec.sol": { "keccak256": "0x86b1b1cd11158dddb9d381040c57fdc643c74b5e4eed3e7e036f32452672ad74", "urls": ["bzz-raw://ad88663b6c76df73cf09a272cf333d038df7bb4c51281284b572bf9b46e1cd77", "dweb:/ipfs/QmVKxYF8avyPBtqejVhFCM2CuHsfpsCh7TsPqkBLtrgwJQ"], "license": "LGPL-3.0-only" }, "lib/openzeppelin-contracts/contracts/utils/ReentrancyGuard.sol": { "keccak256": "0xf980daa263b661ab8ddee7d4fd833c7da7e7995e2c359ff1f17e67e4112f2236", "urls": ["bzz-raw://7448ab095d6940130bcf76ba47a2eab14148c83119523b93dd89f6d84edd6c02", "dweb:/ipfs/QmawrZ4voKQjH3oomXT3Kuheb3Mnmo2VvVpxg8Ne5UJUrd"], "license": "MIT" }, "lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol": { "keccak256": "0x9e8778b14317ba9e256c30a76fd6c32b960af621987f56069e1e819c77c6a133", "urls": ["bzz-raw://1777404f1dcd0fac188e55a288724ec3c67b45288e49cc64723e95e702b49ab8", "dweb:/ipfs/QmZFdC626GButBApwDUvvTnUzdinevC3B24d7yyh57XkiA"], "license": "MIT" }, "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol": { "keccak256": "0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b", "urls": ["bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df", "dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL"], "license": "MIT" }, "src/v07/EntryPoint.sol": { "keccak256": "0xe67e8ce0af5e518732ca3f3ca14f2f7963547f3a27e6567c2f6b45c70ffb10f9", "urls": ["bzz-raw://77f0af329d36750a40ab832cb78bbaa2e1133048aeb23bd97c0f61426ecd859c", "dweb:/ipfs/QmUJiU774ZM9Wfs7BWtYZ2Xktf9baZQ7QhFsgdLPDJfYni"], "license": "GPL-3.0" }, "src/v07/EntryPointSimulations.sol": { "keccak256": "0xc78870c32f604870528b484290626b2e51e294d997831fb19b80f67d8edf9fe7", "urls": ["bzz-raw://8d3cad5bdb8f861ad110ac68e50a2b5ddaecb63aabe3ab085efcfdd2371dd7b8", "dweb:/ipfs/QmZ4eAM9mZfR9YixFnbmThVhwRy2JibAinfbgnoKSYvijW"], "license": "GPL-3.0" }, "src/v07/IEntryPoint.sol": { "keccak256": "0xca38cd0a2ed294deb3f36c933de236524a597ffc72da21a925458780d0b13b2d", "urls": ["bzz-raw://01dc9ca228751a7ba99e72d88c8dd3bfcae6d9bb85180a9ea7efc0550e9237a0", "dweb:/ipfs/QmPsEVXWZAZCKWuys3eqShSXCtHZCSc1bYQhHGDHuABYc6"], "license": "GPL-3.0" }, "src/v07/IEntryPointSimulations.sol": { "keccak256": "0x49c6650bcbc4d4725aaa3aad66381c1c20b2a5d8b0249dcfa95fc65337d7f0ab", "urls": ["bzz-raw://2aaf93b6816132dd0e098dbbec2c5ae11f561df8b373645f5d266d2106af9b77", "dweb:/ipfs/QmPMKdVZpub1sHSSXmSufmwC5ZfaL3v5GpcNU4QY6Hw6cN"], "license": "GPL-3.0" }, "src/v07/PimlicoEntryPointSimulationsV7.sol": { "keccak256": "0x1c66f35a4a3e68de494e7b98319da78691c504d7b00dd178f0a97066d6e2e4c4", "urls": ["bzz-raw://6ca1adcab2d6f96a93039e3a8e79ba54f03af90ef04b8329778bd8a2ff0d8e22", "dweb:/ipfs/QmZunE8jAxiA2E96Qe5gwiwp1usDu7hPWiXX2xPNnWNqoX"], "license": null } }, "version": 1 }, "id": 21 }