UNPKG

@owlprotocol/contracts-account-abstraction

Version:

ERC4337 Account Abstraction support for deploying relevant smart contracts and interacting with UserOps.

34 lines (31 loc) 6.33 kB
import { Hex, Address } from "viem"; export const _constructor = { inputs: [{ internalType: "contract EntryPointSimulations", name: "_eps", type: "address" }], stateMutability: "nonpayable", type: "constructor", } as const; export const simulateEntryPoint = { 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", } as const; export const functions = [_constructor, simulateEntryPoint] as const; export const events = [] as const; export const errors = [] as const; export const abi = [...functions, ...events, ...errors] as const; export const bytecode = "0x60a03461006a57601f61055c38819003918201601f19168301916001600160401b0383118484101761006f5780849260209460405283398101031261006a57516001600160a01b038116810361006a576080526040516104d6908161008682396080518161013e0152f35b600080fd5b634e487b7160e01b600052604160045260246000fdfe60406080815260048036101561001457600080fd5b6000803560e01c63c18f52261461002a57600080fd5b3461037457827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103745760043573ffffffffffffffffffffffffffffffffffffffff928382168092036103705760249283359267ffffffffffffffff8085116103705736602386011215610370578460040135946100ab866103e7565b956100b88a519788610377565b808752602095888789019260051b8401019236841161036c5789819b969b01925b8484106102b05750505050505083519461010a6100f5876103e7565b966101028a519889610377565b8088526103e7565b967fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0809801845b8181106102a157505083927f000000000000000000000000000000000000000000000000000000000000000016925b898751821015610228579087868087876101d28f8d6101c660019a6101878b60609b61045d565b519080519788948501977f850aaf62000000000000000000000000000000000000000000000000000000008952850152604484015260648301906103ff565b03908101845283610377565b82885a935193f1156101fb575b6101e9828b61045d565b526101f4818a61045d565b5001610160565b503d610800808211610220575b508b519088818301018d52808252878983013e6101df565b905038610208565b805187815289518189018190528792600582901b83018101918c8b01918b9085015b8287106102575785850386f35b909192938280610291837fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc08a6001960301865288516103ff565b960192019601959291909261024a565b60608982018801528601610131565b839b969b3586811161036857820136604382011215610368578b810135604488821161033d578f519261030a8d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8601160185610377565b82845236828483010111610339578c838196948296948f940183860137830101528152019301929a959a6100d9565b8b80fd5b8d8b6041887f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b8880fd5b8680fd5b8280fd5b80fd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176103b857604052565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b67ffffffffffffffff81116103b85760051b60200190565b919082519283825260005b8481106104495750507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8460006020809697860101520116010190565b60208183018101518483018201520161040a565b80518210156104715760209160051b010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea26469706673582212208f6088124b1bdc49cfe72e0eb68a36a1a1f3cc8b1c04e6fa6bef27638cad14bb64736f6c63430008170033" as Hex; export const deployedBytecode = "0x60406080815260048036101561001457600080fd5b6000803560e01c63c18f52261461002a57600080fd5b3461037457827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103745760043573ffffffffffffffffffffffffffffffffffffffff928382168092036103705760249283359267ffffffffffffffff8085116103705736602386011215610370578460040135946100ab866103e7565b956100b88a519788610377565b808752602095888789019260051b8401019236841161036c5789819b969b01925b8484106102b05750505050505083519461010a6100f5876103e7565b966101028a519889610377565b8088526103e7565b967fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0809801845b8181106102a157505083927f000000000000000000000000000000000000000000000000000000000000000016925b898751821015610228579087868087876101d28f8d6101c660019a6101878b60609b61045d565b519080519788948501977f850aaf62000000000000000000000000000000000000000000000000000000008952850152604484015260648301906103ff565b03908101845283610377565b82885a935193f1156101fb575b6101e9828b61045d565b526101f4818a61045d565b5001610160565b503d610800808211610220575b508b519088818301018d52808252878983013e6101df565b905038610208565b805187815289518189018190528792600582901b83018101918c8b01918b9085015b8287106102575785850386f35b909192938280610291837fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc08a6001960301865288516103ff565b960192019601959291909261024a565b60608982018801528601610131565b839b969b3586811161036857820136604382011215610368578b810135604488821161033d578f519261030a8d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8601160185610377565b82845236828483010111610339578c838196948296948f940183860137830101528152019301929a959a6100d9565b8b80fd5b8d8b6041887f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b8880fd5b8680fd5b8280fd5b80fd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176103b857604052565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b67ffffffffffffffff81116103b85760051b60200190565b919082519283825260005b8481106104495750507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8460006020809697860101520116010190565b60208183018101518483018201520161040a565b80518210156104715760209160051b010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea26469706673582212208f6088124b1bdc49cfe72e0eb68a36a1a1f3cc8b1c04e6fa6bef27638cad14bb64736f6c63430008170033" as Hex; export const implementation = "0xb43675343DDcE61df5B7f35Df485Ae085Bc22921" as Address; export const PimlicoEntryPointSimulations = { abi, bytecode, deployedBytecode, implementation, };