@paulstinchcombe/gasless-nft-tx 0.0.34 → 0.0.35
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.
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { Address } from 'viem';
|
|
2
2
|
/**
|
|
3
|
-
* SimpleAccount bytecode - ERC-4337 compliant account implementation
|
|
4
|
-
* This is
|
|
3
|
+
* SimpleAccount bytecode - ERC-4337 v0.7 compliant account implementation
|
|
4
|
+
* This is the official SimpleAccount from @account-abstraction/contracts v0.7.0
|
|
5
|
+
* Compatible with EntryPoint v0.7 (0x0000000071727De22E5E9d8BAf0edAc6f37da032)
|
|
5
6
|
*/
|
|
6
|
-
export declare const SIMPLE_ACCOUNT_BYTECODE: "0x60806040523480156200001157600080fd5b5060405162001a4638038062001a468339810160408190526200003491620000e0565b6001600160a01b0381166200005c5760405163d92e233d60e01b815260040160405180910390fd5b600080546001600160a01b0319166001600160a01b03929092169190911790556200011e565b80516001600160a01b03811681146200009957600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620000d1578181015183820152602001620000b7565b50506000910152565b60008060408385031215620000f457600080fd5b620000ff8362000081565b602084810151919350906001600160401b03808211156200011f57600080fd5b818601915086601f8301126200013457600080fd5b8151818111156200014957620001496200009e565b604051601f8201601f19908116603f011681019083821181831017156200017457620001746200009e565b8160405282815289868487010111156200018d57600080fd5b620001a0836020830160208801620000b4565b80955050505050509250929050565b6118f880620001be6000396000f3fe6080604052600436106100c05760003560e01c8063b61d27f611610074578063c4d66de81161004e578063c4d66de814610234578063d087d28814610254578063f698da251461026957600080fd5b8063b61d27f6146101e1578063b0d691fe14610201578063bc197c811461022157600080fd5b80633a871cdd116100a55780633a871cdd1461017c5780634a58db191461018f5780634d44560d146101c157600080fd5b806318dfb3c7146100c55780633659cfe6146100e7575b600080fd5b3480156100d157600080fd5b506100e56100e0366004611247565b61027e565b005b3480156100f357600080fd5b506100e56101023660046112a9565b50565b34801561011157600080fd5b5061012561012036600461130e565b6102c5565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561014e57600080fd5b5061016261015d366004611361565b6102f9565b604051901515815260200161013b565b6100e561018a3660046113e4565b610389565b34801561019b57600080fd5b506101af6101aa366004611461565b6103f7565b60405190815260200161013b565b3480156101cd57600080fd5b506100e56101dc3660046114a3565b610432565b3480156101ed57600080fd5b506100e56101fc3660046114e5565b610485565b34801561020d57600080fd5b506000546001600160a01b0316610125565b6100e561022f366004611531565b6104e9565b34801561024057600080fd5b506100e561024f3660046112a9565b610528565b34801561026057600080fd5b506101af610596565b34801561027557600080fd5b506101af6105a8565b6000546001600160a01b031633146102a95760405163ea8e4eb560e01b815260040160405180910390fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b60006102f38383604051806020016040528060008152506105ba565b92915050565b6000806103098560000151610596565b90506000610319828601866115f4565b905060006103298287878761060d565b905080156103795761037985858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061066f915050565b5060019695505050505050565b60006103978285018561161d565b90506103a58185858561070b565b6103ef81858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061066f915050565b505050505050565b6000806104068460000151610596565b90506000610416828501856115f4565b90506104248183868661060d565b949350505050565b6000546001600160a01b0316331461045757604051631e4fbdf760e01b815260040160405180910390fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146104b15760405163ea8e4eb560e01b815260040160405180910390fd5b6104e48383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061079292505050565b505050565b6000546001600160a01b031633146105155760405163ea8e4eb560e01b815260040160405180910390fd5b6105218585858561070b565b5050505050565b6000546001600160a01b03161561055257604051633ab534b960e21b815260040160405180910390fd5b6001600160a01b03811661057957604051631e4fbdf760e01b815260040160405180910390fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b60006105a3600143611690565b905090565b60006105a34261ffff16610596565b6000806105c9858585856107e3565b90506105d481610862565b6105f05760405163815e1d6460e01b815260040160405180910390fd5b6105fc858585856108a8565b9150505b9392505050565b6000806106188686868660006108f8565b905060006106258261097d565b90506001600160a01b03811661064e57604051631e4fbdf760e01b815260040160405180910390fd5b6000546001600160a01b039081169116149695505050505050565b6000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146106bc576040519150601f19603f3d011682016040523d82523d6000602084013e6106c1565b606091505b50509050806104e45760405162461bcd60e51b815260206004820152601360248201527211985a5b1959081d1c985b9cd9995c8819985a5b606a1b60448201526064015b60405180910390fd5b600061071a8560000151610596565b9050600061072a828601866115f4565b9050600061073a8287878761060d565b90508061075a57604051638baa579f60e01b815260040160405180910390fd5b61078988858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061079292505050565b50505050505050565b6000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146106bc576040519150601f19603f3d011682016040523d82523d6000602084013e6106c1565b6000806107f3868686868661099c565b905060006107fe8261097d565b90506001600160a01b03811661082757604051631e4fbdf760e01b815260040160405180910390fd5b6001546001600160a01b039081169116149695505050505050565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061089657508115155b80156108a057508115155b949350505050565b60006108b7858585858661099c565b905060006108c48261097d565b90506001600160a01b0381166108ed57604051631e4fbdf760e01b815260040160405180910390fd5b979650505050505050565b60008061090a8888888888886109f4565b90506000610917826109fd565b905060006109248261097d565b90506001600160a01b03811661094d57604051631e4fbdf760e01b815260040160405180910390fd5b6000546001600160a01b039081169116149998505050505050505050565b600061098c8260001c610a2e565b6001600160a01b031692915050565b60006109ab868686868661099c565b905060006109b88261097d565b90506001600160a01b0381166109e157604051631e4fbdf760e01b815260040160405180910390fd5b6001600160a01b03169695505050505050565b60009695505050505050565b6000610a0882610a3e565b8051909150610a16816109fd565b6001600160a01b0316949350505050565b6000610a3982610a3e565b519392505050565b606081600001518260200151836040015184606001518560800151604051602001610a70959493929190611690565b6040516020818303038152906040529050919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715610ac457610ac4610a85565b604052919050565b60006001600160401b03821115610ae557610ae5610a85565b50601f01601f191660200190565b600082601f830112610b0457600080fd5b8135610b17610b1282610acc565b610a9b565b818152846020838601011115610b2c57600080fd5b816020850160208301376000918101602001919091529392505050565b80356001600160a01b0381168114610b6057600080fd5b919050565b600060208284031215610b7757600080fd5b610b8082610b49565b9392505050565b60008060408385031215610b9a57600080fd5b610ba383610b49565b946020939093013593505050565b60008060408385031215610bc457600080fd5b823567ffffffffffffffff80821115610bdc57600080fd5b610be886838701610af3565b93506020850135915080821115610bfe57600080fd5b50610c0b85828601610af3565b9150509250929050565b600060208284031215610c2757600080fd5b5035919050565b60008060408385031215610c4157600080fd5b50508035926020909101359150565b60008060408385031215610c6357600080fd5b610c6c83610b49565b9150602083013567ffffffffffffffff811115610c8857600080fd5b610c0b85828601610af3565b600080600060608486031215610ca957600080fd5b610cb284610b49565b925060208401359150604084013567ffffffffffffffff811115610cd557600080fd5b610ce186828701610af3565b9150509250925092565b60005b83811015610d06578181015183820152602001610cee565b50506000910152565b60008151808452610d27816020860160208601610ceb565b601f01601f19169290920160200192915050565b602081526000610b806020830184610d0f565b600080600060608486031215610d6357600080fd5b610d6c84610b49565b9250610d7a60208501610b49565b9150604084013567ffffffffffffffff811115610cd557600080fd5b600080600080600060a08688031215610dae57600080fd5b610db786610b49565b9450610dc560208701610b49565b9350604086013567ffffffffffffffff80821115610de257600080fd5b610dee89838a01610af3565b94506060880135915080821115610e0457600080fd5b610e1089838a01610af3565b93506080880135915080821115610e2657600080fd5b50610e3388828901610af3565b9150509295509295909350565b634e487b7160e01b600052601160045260246000fd5b818103818111156102f3576102f3610e40565b60008251610e81818460208701610ceb565b919091019291505056fea2646970667358221220a1b5c5c8d8e7f8e9f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff000102030405060764736f6c63430008150033";
|
|
7
|
+
export declare const SIMPLE_ACCOUNT_BYTECODE: "0x60c034610142576001600160401b0390601f611bde38819003918201601f1916830191848311848410176101475780849260209460405283398101031261014257516001600160a01b0381168103610142573060805260a0527ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a009081549060ff8260401c166101305780808316036100eb575b604051611a80908161015e82396080518181816108ff0152610afd015260a05181818161036701528181610611015281816106f001528181610ce501528181610ebc015281816111a40152818161149c015261164e0152f35b6001600160401b031990911681179091556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a1388080610092565b60405163f92ee8a960e01b8152600490fd5b600080fd5b634e487b7160e01b600052604160045260246000fdfe6080604052600436101561001b575b361561001957600080fd5b005b60003560e01c806301ffc9a71461012b578063150b7a021461012657806319822f7c1461012157806347e1da2a1461011c5780634a58db19146101175780634d44560d146101125780634f1ef2861461010d57806352d1902d146101085780638da5cb5b14610103578063ad3cb1cc146100fe578063b0d691fe146100f9578063b61d27f6146100f4578063bc197c81146100ef578063c399ec88146100ea578063c4d66de8146100e5578063d087d288146100e05763f23a6e610361000e57611207565b611125565b610f15565b610e44565b610d7d565b610d09565b610c9a565b610bc9565b610b77565b610ab7565b61087f565b610692565b6105cf565b610484565b6102fd565b61026c565b3461021b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b576004357fffffffff00000000000000000000000000000000000000000000000000000000811680910361021b57807f150b7a0200000000000000000000000000000000000000000000000000000000602092149081156101f1575b81156101c7575b506040519015158152f35b7f01ffc9a700000000000000000000000000000000000000000000000000000000915014386101bc565b7f4e2312e000000000000000000000000000000000000000000000000000000000811491506101b5565b600080fd5b73ffffffffffffffffffffffffffffffffffffffff81160361021b57565b9181601f8401121561021b5782359167ffffffffffffffff831161021b576020838186019501011161021b57565b3461021b5760807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b576102a6600435610220565b6102b1602435610220565b60643567ffffffffffffffff811161021b576102d190369060040161023e565b505060206040517f150b7a02000000000000000000000000000000000000000000000000000000008152f35b3461021b577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc60608136011261021b576004359067ffffffffffffffff821161021b5761012090823603011261021b5760443573ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001633036103f5576103a06103b892602435906004016113d5565b90806103bc575b506040519081529081906020820190565b0390f35b600080808093337ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1506103ee611454565b50386103a7565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f6163636f756e743a206e6f742066726f6d20456e747279506f696e74000000006044820152fd5b9181601f8401121561021b5782359167ffffffffffffffff831161021b576020808501948460051b01011161021b57565b3461021b5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b5767ffffffffffffffff60043581811161021b576104d4903690600401610453565b60249291923582811161021b576104ef903690600401610453565b9260443590811161021b57610508903690600401610453565b939091610513611484565b848414806105be575b61052590611298565b8161057257505060005b82811061053857005b8061056c61055161054c600194878a61132c565b611341565b61056661055f84898861139f565b3691610848565b9061153a565b0161052f565b91909460009493945b85811061058457005b806105b861059861054c6001948a8761132c565b6105a3838b8961132c565b356105b261055f858b8a61139f565b91611562565b0161057b565b5081158061051c575081851461051c565b6000807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261068f5773ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001681813b1561068f57602491604051928380927fb760faf900000000000000000000000000000000000000000000000000000000825230600483015234905af1801561068a5761067e575080f35b61068790610798565b80f35b6113ba565b80fd5b3461021b57600060407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261068f576004356106cf81610220565b6106d7611579565b8173ffffffffffffffffffffffffffffffffffffffff807f00000000000000000000000000000000000000000000000000000000000000001692833b15610765576044908360405195869485937f205c287800000000000000000000000000000000000000000000000000000000855216600484015260243560248401525af1801561068a5761067e575080f35b8280fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b67ffffffffffffffff81116107ac57604052565b610769565b6040810190811067ffffffffffffffff8211176107ac57604052565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176107ac57604052565b67ffffffffffffffff81116107ac57601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b9291926108548261080e565b9161086260405193846107cd565b82948184528183011161021b578281602093846000960137010152565b60407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b5760048035906108b782610220565b60243567ffffffffffffffff811161021b573660238201121561021b576108e79036906024818501359101610848565b73ffffffffffffffffffffffffffffffffffffffff807f000000000000000000000000000000000000000000000000000000000000000016803014908115610a89575b50610a6057906020839261093c611579565b604051938480927f52d1902d00000000000000000000000000000000000000000000000000000000825288165afa60009281610a2f575b506109c75750506040517f4c9c8ce300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff90921690820190815281906020010390fd5b83837f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc84036109fa576100198383611695565b6040517faa1d49a400000000000000000000000000000000000000000000000000000000815290810184815281906020010390fd5b610a5291935060203d602011610a59575b610a4a81836107cd565b8101906113c6565b9138610973565b503d610a40565b826040517fe07c8dba000000000000000000000000000000000000000000000000000000008152fd5b9050817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541614153861092a565b3461021b5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b5773ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000163003610b4d5760206040517f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8152f35b60046040517fe07c8dba000000000000000000000000000000000000000000000000000000008152fd5b3461021b5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b57602073ffffffffffffffffffffffffffffffffffffffff60005416604051908152f35b3461021b5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b576040805190610c06826107b1565b600582526020907f352e302e300000000000000000000000000000000000000000000000000000006020840152604051916020835283519182602085015260005b838110610c8757846040817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f88600085828601015201168101030190f35b8581018301518582018301528201610c47565b3461021b5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b57602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b3461021b5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b57600435610d4481610220565b6044359067ffffffffffffffff821161021b57610d73610d6b61001993369060040161023e565b61055f611484565b9060243590611562565b3461021b5760a07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b57610db7600435610220565b610dc2602435610220565b67ffffffffffffffff60443581811161021b57610de3903690600401610453565b505060643581811161021b57610dfd903690600401610453565b505060843590811161021b57610e1790369060040161023e565b50506040517fbc197c81000000000000000000000000000000000000000000000000000000008152602090f35b3461021b5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b576040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015260208160248173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165afa801561068a57602091600091610ef8575b50604051908152f35b610f0f9150823d8411610a5957610a4a81836107cd565b38610eef565b3461021b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b57600435610f5081610220565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00549067ffffffffffffffff60ff8360401c161592168015908161111d575b6001149081611113575b15908161110a575b506110e0576110039082610ffa7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0060017fffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000825416179055565b61108457611609565b61100957005b6110557ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a007fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff8154169055565b604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a1005b6110db7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00680100000000000000007fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff825416179055565b611609565b60046040517ff92ee8a9000000000000000000000000000000000000000000000000000000008152fd5b90501538610fa1565b303b159150610f99565b839150610f8f565b3461021b5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b576040517f35567e1a0000000000000000000000000000000000000000000000000000000081523060048201526000602482015260208160448173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165afa801561068a576103b8916000916111e857506040519081529081906020820190565b611201915060203d602011610a5957610a4a81836107cd565b386103a7565b3461021b5760a07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b57611241600435610220565b61124c602435610220565b60843567ffffffffffffffff811161021b5761126c90369060040161023e565b505060206040517ff23a6e61000000000000000000000000000000000000000000000000000000008152f35b1561129f57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f77726f6e67206172726179206c656e67746873000000000000000000000000006044820152fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b919081101561133c5760051b0190565b6112fd565b3561134b81610220565b90565b9035907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18136030182121561021b570180359067ffffffffffffffff821161021b5760200191813603831361021b57565b9082101561133c576113b69160051b81019061134e565b9091565b6040513d6000823e3d90fd5b9081602091031261021b575190565b907f19457468657265756d205369676e6564204d6573736167653a0a333200000000600052601c52603c60002061144461143b73ffffffffffffffffffffffffffffffffffffffff9261143561055f85600054169661010081019061134e565b906117af565b90929192611824565b160361144f57600090565b600190565b3d1561147f573d906114658261080e565b9161147360405193846107cd565b82523d6000602084013e565b606090565b73ffffffffffffffffffffffffffffffffffffffff807f000000000000000000000000000000000000000000000000000000000000000016331490811561152c575b50156114ce57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602060248201527f6163636f756e743a206e6f74204f776e6572206f7220456e747279506f696e746044820152fd5b9050600054163314386114c6565b600091829182602083519301915af1611551611454565b901561155a5750565b602081519101fd5b916000928392602083519301915af1611551611454565b73ffffffffffffffffffffffffffffffffffffffff6000541633148015611600575b156115a257565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f6f6e6c79206f776e6572000000000000000000000000000000000000000000006044820152fd5b5030331461159b565b73ffffffffffffffffffffffffffffffffffffffff80911690817fffffffffffffffffffffffff000000000000000000000000000000000000000060005416176000557f0000000000000000000000000000000000000000000000000000000000000000167f47e55c76e7a6f1fd8996a1da8008c1ea29699cca35e7bcd057f2dec313b6e5de600080a3565b90813b156117685773ffffffffffffffffffffffffffffffffffffffff82167f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc817fffffffffffffffffffffffff00000000000000000000000000000000000000008254161790557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b600080a280511561173557611732916118fb565b50565b50503461173e57565b60046040517fb398979f000000000000000000000000000000000000000000000000000000008152fd5b60248273ffffffffffffffffffffffffffffffffffffffff604051917f4c9c8ce3000000000000000000000000000000000000000000000000000000008352166004820152fd5b81519190604183036117e0576117d992506020820151906060604084015193015160001a90611919565b9192909190565b505060009160029190565b600411156117f557565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b61182d816117eb565b80611836575050565b61183f816117eb565b600181036118715760046040517ff645eedf000000000000000000000000000000000000000000000000000000008152fd5b61187a816117eb565b600281036118b4576040517ffce698f700000000000000000000000000000000000000000000000000000000815260048101839052602490fd5b806118c06003926117eb565b146118c85750565b6040517fd78bce0c0000000000000000000000000000000000000000000000000000000081526004810191909152602490fd5b60008061134b93602081519101845af4611913611454565b916119aa565b91907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0841161199e57926020929160ff608095604051948552168484015260408301526060820152600092839182805260015afa1561068a57805173ffffffffffffffffffffffffffffffffffffffff81161561199557918190565b50809160019190565b50505060009160039190565b906119e957508051156119bf57805190602001fd5b60046040517f1425ea42000000000000000000000000000000000000000000000000000000008152fd5b81511580611a41575b6119fa575090565b60249073ffffffffffffffffffffffffffffffffffffffff604051917f9996b315000000000000000000000000000000000000000000000000000000008352166004820152fd5b50803b156119f256fea2646970667358221220b5c215ee5fa04abf2dfcb3c8c197be24579578cbe6acba031df06992353e35c464736f6c63430008170033";
|
|
7
8
|
/**
|
|
8
|
-
* SimpleAccountFactory bytecode - Factory for deploying SimpleAccount instances
|
|
9
|
+
* SimpleAccountFactory bytecode - Factory for deploying SimpleAccount instances (v0.7)
|
|
9
10
|
*/
|
|
10
|
-
export declare const SIMPLE_ACCOUNT_FACTORY_BYTECODE: "0x608060405234801561001057600080fd5b506040516107e83803806107e883398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b610755806100936000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80635fbfb9cf146100465780638cb84e1814610072578063fc6f94680461009f575b600080fd5b610059610054366004610585565b6100b2565b6040516001600160a01b03909116815260200160405180910390f35b6100596100803660046105b7565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6100596100ad366004610585565b6100c6565b60006100bf8383306101c1565b9392505050565b6000806100d48585856100b2565b90506001600160a01b0381163b6100f5576100ef85856102b5565b506100bf565b949350505050565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b03811661019f5760405162461bcd60e51b815260206004820152601760248201527f437265617465323a204661696c6564206f6e206465706c6f7900000000000000604482015260640160405180910390fd5b92915050565b6000816040516020016101b891906105e9565b60405160208183030381529060405280519060200120905092915050565b6000838383604051602001610200939291909283526001600160a01b03918216602084015216604082015260600190565b6040516020818303038152906040528051906020012090509392505050565b6000546040516001600160a01b0390911690610240908490849060240161063a565b60408051601f198184030181529181526020820180516001600160e01b031663189acdbd60e31b179052516102759190610665565b6000604051808303816000865af19150503d80600081146102b2576040519150601f19603f3d011682016040523d82523d6000602084013e6102b7565b606091505b5050505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663189acdbd60e31b17905261030c9061031c565b505050565b6000546001600160a01b031690565b6000610371826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166103ce9092919063ffffffff16565b80519091501561030c578080602001905181019061038f9190610681565b61030c5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840160405180910390fd5b60606103dd84846000856103e5565b949350505050565b6060824710156104465760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840160405180910390fd5b843b6104945760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640160405180910390fd5b600080866001600160a01b031685876040516104b09190610665565b60006040518083038185875af1925050503d80600081146104ed576040519150601f19603f3d011682016040523d82523d6000602084013e6104f2565b606091505b509150915061050282828661050d565b979650505050505050565b6060831561051c5750816100bf565b82511561052c5782518084602001fd5b8160405162461bcd60e51b81526004016105469190610699565b60405180910390fd5b80356001600160a01b038116811461056657600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561059857600080fd5b6105a18361054f565b91506105af6020840161054f565b90509250929050565b600080604083850312156105cb57600080fd5b6105d48361054f565b91506105af6020840161054f565b60006105f48261054f565b9392505050565b6000815180845260005b8181101561062157602081850181015186830182015201610605565b506000602082860101526020601f19601f83011685010191505092915050565b6001600160a01b038316815260406020820181905260009061065e908301846105fb565b95945050505050565b600082516106798184602087016105fb565b919091019291505050565b60006020828403121561069657600080fd5b815180151581146100bf57600080fd5b6020815260006105f460208301846105fb56fea2646970667358221220b1c2d3e4f5a6b7c8d9e0f1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b1c264736f6c63430008150033";
|
|
11
|
+
export declare const SIMPLE_ACCOUNT_FACTORY_BYTECODE: "0x60a060405234801561001057600080fd5b506040516129e13803806129e183398101604081905261002f91610088565b8060405161003c9061007b565b6001600160a01b039091168152602001604051809103906000f080158015610068573d6000803e3d6000fd5b506001600160a01b0316608052506100b8565b612011806109d083390190565b60006020828403121561009a57600080fd5b81516001600160a01b03811681146100b157600080fd5b9392505050565b6080516108f06100e060003960008181604b01528181610114015261025801526108f06000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806311464fbe146100465780635fbfb9cf146100965780638cb84e18146100a9575b600080fd5b61006d7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b61006d6100a436600461039d565b6100bc565b61006d6100b736600461039d565b6101ee565b6000806100c984846101ee565b905073ffffffffffffffffffffffffffffffffffffffff81163b80156100f1575090506101e8565b60405173ffffffffffffffffffffffffffffffffffffffff8616602482015284907f000000000000000000000000000000000000000000000000000000000000000090604401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fc4d66de800000000000000000000000000000000000000000000000000000000179052516101b790610390565b6101c2929190610406565b8190604051809103906000f59050801580156101e2573d6000803e3d6000fd5b50925050505b92915050565b60006103578260001b6040518060200161020790610390565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe082820381018352601f90910116604081905273ffffffffffffffffffffffffffffffffffffffff871660248201527f000000000000000000000000000000000000000000000000000000000000000090604401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152918152602080830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fc4d66de800000000000000000000000000000000000000000000000000000000179052905161030093929101610406565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529082905261033c9291602001610474565b6040516020818303038152906040528051906020012061035e565b9392505050565b60006103578383306000604051836040820152846020820152828152600b8101905060ff815360559020949350505050565b610417806104a483390190565b600080604083850312156103b057600080fd5b823573ffffffffffffffffffffffffffffffffffffffff811681146103d457600080fd5b946020939093013593505050565b60005b838110156103fd5781810151838201526020016103e5565b50506000910152565b73ffffffffffffffffffffffffffffffffffffffff8316815260406020820152600082518060408401526104418160608501602087016103e2565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016919091016060019392505050565b600083516104868184602088016103e2565b83519083019061049a8183602088016103e2565b0194935050505056fe608060405260405161041738038061041783398101604081905261002291610268565b61002c8282610033565b5050610352565b61003c82610092565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a280511561008657610081828261010e565b505050565b61008e610185565b5050565b806001600160a01b03163b6000036100cd57604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b03168460405161012b9190610336565b600060405180830381855af49150503d8060008114610166576040519150601f19603f3d011682016040523d82523d6000602084013e61016b565b606091505b50909250905061017c8583836101a6565b95945050505050565b34156101a45760405163b398979f60e01b815260040160405180910390fd5b565b6060826101bb576101b682610205565b6101fe565b81511580156101d257506001600160a01b0384163b155b156101fb57604051639996b31560e01b81526001600160a01b03851660048201526024016100c4565b50805b9392505050565b8051156102155780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b634e487b7160e01b600052604160045260246000fd5b60005b8381101561025f578181015183820152602001610247565b50506000910152565b6000806040838503121561027b57600080fd5b82516001600160a01b038116811461029257600080fd5b60208401519092506001600160401b03808211156102af57600080fd5b818501915085601f8301126102c357600080fd5b8151818111156102d5576102d561022e565b604051601f8201601f19908116603f011681019083821181831017156102fd576102fd61022e565b8160405282815288602084870101111561031657600080fd5b610327836020830160208801610244565b80955050505050509250929050565b60008251610348818460208701610244565b9190910192915050565b60b7806103606000396000f3fe6080604052600a600c565b005b60186014601a565b605e565b565b600060597f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5473ffffffffffffffffffffffffffffffffffffffff1690565b905090565b3660008037600080366000845af43d6000803e808015607c573d6000f35b3d6000fdfea2646970667358221220d7f23a80daebb5531c9e4a18d87e812fca112e5df7e56433218edcc12bbe415d64736f6c63430008170033a2646970667358221220f5be4d2659f1a124e46d76b875ad5264a1c62d421946ca067d6132fa6cc4309964736f6c6343000817003360c0604052306080523480156200001557600080fd5b50604051620020113803806200201183398101604081905262000038916200010a565b6001600160a01b03811660a0526200004f62000056565b506200013c565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff1615620000a75760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b0390811614620001075780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6000602082840312156200011d57600080fd5b81516001600160a01b03811681146200013557600080fd5b9392505050565b60805160a051611e70620001a160003960008181610320015281816106f00152818161079e0152818161092601528181610b6301528181610baa01528181610d6a015261121e015260008181610f3301528181610f5c015261117d0152611e706000f3fe6080604052600436106101125760003560e01c80638da5cb5b116100a5578063bc197c8111610074578063c4d66de811610059578063c4d66de8146103c1578063d087d288146103e1578063f23a6e61146103f657600080fd5b8063bc197c8114610364578063c399ec88146103ac57600080fd5b80638da5cb5b14610269578063ad3cb1cc146102bb578063b0d691fe14610311578063b61d27f61461034457600080fd5b80634a58db19116100e15780634a58db19146102195780634d44560d146102215780634f1ef2861461024157806352d1902d1461025457600080fd5b806301ffc9a71461011e578063150b7a021461015357806319822f7c146101c957806347e1da2a146101f757600080fd5b3661011957005b600080fd5b34801561012a57600080fd5b5061013e61013936600461179b565b61043c565b60405190151581526020015b60405180910390f35b34801561015f57600080fd5b5061019861016e366004611848565b7f150b7a020000000000000000000000000000000000000000000000000000000095945050505050565b6040517fffffffff00000000000000000000000000000000000000000000000000000000909116815260200161014a565b3480156101d557600080fd5b506101e96101e43660046118bb565b610521565b60405190815260200161014a565b34801561020357600080fd5b50610217610212366004611954565b610547565b005b6102176106ee565b34801561022d57600080fd5b5061021761023c3660046119ee565b610794565b61021761024f366004611a49565b610843565b34801561026057600080fd5b506101e9610862565b34801561027557600080fd5b506000546102969073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161014a565b3480156102c757600080fd5b506103046040518060400160405280600581526020017f352e302e3000000000000000000000000000000000000000000000000000000081525081565b60405161014a9190611b4f565b34801561031d57600080fd5b507f0000000000000000000000000000000000000000000000000000000000000000610296565b34801561035057600080fd5b5061021761035f366004611ba0565b610891565b34801561037057600080fd5b5061019861037f366004611bfc565b7fbc197c810000000000000000000000000000000000000000000000000000000098975050505050505050565b3480156103b857600080fd5b506101e96108e0565b3480156103cd57600080fd5b506102176103dc366004611cbb565b610997565b3480156103ed57600080fd5b506101e9610b16565b34801561040257600080fd5b50610198610411366004611cd8565b7ff23a6e61000000000000000000000000000000000000000000000000000000009695505050505050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f150b7a020000000000000000000000000000000000000000000000000000000014806104cf57507fffffffff0000000000000000000000000000000000000000000000000000000082167f4e2312e000000000000000000000000000000000000000000000000000000000145b8061051b57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b600061052b610b92565b6105358484610c33565b905061054082610ce7565b9392505050565b61054f610d52565b8481148015610565575082158061056557508281145b6105d0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f77726f6e67206172726179206c656e677468730000000000000000000000000060448201526064015b60405180910390fd5b600083900361067c5760005b858110156106765761066e8787838181106105f9576105f9611d42565b905060200201602081019061060e9190611cbb565b600085858581811061062257610622611d42565b90506020028101906106349190611d71565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610e1392505050565b6001016105dc565b506106e6565b60005b858110156106e4576106dc87878381811061069c5761069c611d42565b90506020020160208101906106b19190611cbb565b8686848181106106c3576106c3611d42565b9050602002013585858581811061062257610622611d42565b60010161067f565b505b505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006040517fb760faf900000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff919091169063b760faf99034906024016000604051808303818588803b15801561077957600080fd5b505af115801561078d573d6000803e3d6000fd5b5050505050565b61079c610e90565b7f00000000000000000000000000000000000000000000000000000000000000006040517f205c287800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff848116600483015260248201849052919091169063205c287890604401600060405180830381600087803b15801561082f57600080fd5b505af11580156106e6573d6000803e3d6000fd5b61084b610f1b565b6108548261101f565b61085e8282611027565b5050565b600061086c611165565b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc90565b610899610d52565b6108da848484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610e1392505050565b50505050565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015260009073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016906370a08231906024015b602060405180830381865afa15801561096e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109929190611dd6565b905090565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff166000811580156109e25750825b905060008267ffffffffffffffff1660011480156109ff5750303b155b905081158015610a0d575080155b15610a44576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001660011785558315610aa55784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff16680100000000000000001785555b610aae866111d4565b83156106e65784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a1505050505050565b6040517f35567e1a0000000000000000000000000000000000000000000000000000000081523060048201526000602482018190529073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016906335567e1a90604401610951565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610c31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f6163636f756e743a206e6f742066726f6d20456e747279506f696e740000000060448201526064016105c7565b565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000006000908152601c829052603c8120610cae81610c74610100870187611d71565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061126892505050565b60005473ffffffffffffffffffffffffffffffffffffffff908116911614610cda57600191505061051b565b5060009392505050565b50565b8015610ce45760405160009033907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90849084818181858888f193505050503d806000811461078d576040519150601f19603f3d011682016040523d82523d6000602084013e61078d565b3373ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000161480610dad575060005473ffffffffffffffffffffffffffffffffffffffff1633145b610c31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f6163636f756e743a206e6f74204f776e6572206f7220456e747279506f696e7460448201526064016105c7565b6000808473ffffffffffffffffffffffffffffffffffffffff168484604051610e3c9190611def565b60006040518083038185875af1925050503d8060008114610e79576040519150601f19603f3d011682016040523d82523d6000602084013e610e7e565b606091505b50915091508161078d57805160208201fd5b60005473ffffffffffffffffffffffffffffffffffffffff16331480610eb557503330145b610c31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f6f6e6c79206f776e65720000000000000000000000000000000000000000000060448201526064016105c7565b3073ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000161480610fe857507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16610fcf7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610c31576040517fe07c8dba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610ce4610e90565b8173ffffffffffffffffffffffffffffffffffffffff166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156110ac575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682019092526110a991810190611dd6565b60015b6110fa576040517f4c9c8ce300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff831660048201526024016105c7565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8114611156576040517faa1d49a4000000000000000000000000000000000000000000000000000000008152600481018290526024016105c7565b6111608383611292565b505050565b3073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610c31576040517fe07c8dba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff838116918217835560405191927f0000000000000000000000000000000000000000000000000000000000000000909116917f47e55c76e7a6f1fd8996a1da8008c1ea29699cca35e7bcd057f2dec313b6e5de9190a350565b60008060008061127886866112f5565b9250925092506112888282611342565b5090949350505050565b61129b82611446565b60405173ffffffffffffffffffffffffffffffffffffffff8316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156112ed576111608282611515565b61085e611598565b6000806000835160410361132f5760208401516040850151606086015160001a611321888285856115d0565b95509550955050505061133b565b50508151600091506002905b9250925092565b600082600381111561135657611356611e0b565b0361135f575050565b600182600381111561137357611373611e0b565b036113aa576040517ff645eedf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60028260038111156113be576113be611e0b565b036113f8576040517ffce698f7000000000000000000000000000000000000000000000000000000008152600481018290526024016105c7565b600382600381111561140c5761140c611e0b565b0361085e576040517fd78bce0c000000000000000000000000000000000000000000000000000000008152600481018290526024016105c7565b8073ffffffffffffffffffffffffffffffffffffffff163b6000036114af576040517f4c9c8ce300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821660048201526024016105c7565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60606000808473ffffffffffffffffffffffffffffffffffffffff168460405161153f9190611def565b600060405180830381855af49150503d806000811461157a576040519150601f19603f3d011682016040523d82523d6000602084013e61157f565b606091505b509150915061158f8583836116ca565b95945050505050565b3415610c31576040517fb398979f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084111561160b57506000915060039050826116c0565b604080516000808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa15801561165f573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff81166116b6575060009250600191508290506116c0565b9250600091508190505b9450945094915050565b6060826116df576116da82611759565b610540565b8151158015611703575073ffffffffffffffffffffffffffffffffffffffff84163b155b15611752576040517f9996b31500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff851660048201526024016105c7565b5080610540565b8051156117695780518082602001fd5b6040517f1425ea4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000602082840312156117ad57600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461054057600080fd5b73ffffffffffffffffffffffffffffffffffffffff81168114610ce457600080fd5b60008083601f84011261181157600080fd5b50813567ffffffffffffffff81111561182957600080fd5b60208301915083602082850101111561184157600080fd5b9250929050565b60008060008060006080868803121561186057600080fd5b853561186b816117dd565b9450602086013561187b816117dd565b935060408601359250606086013567ffffffffffffffff81111561189e57600080fd5b6118aa888289016117ff565b969995985093965092949392505050565b6000806000606084860312156118d057600080fd5b833567ffffffffffffffff8111156118e757600080fd5b840161012081870312156118fa57600080fd5b95602085013595506040909401359392505050565b60008083601f84011261192157600080fd5b50813567ffffffffffffffff81111561193957600080fd5b6020830191508360208260051b850101111561184157600080fd5b6000806000806000806060878903121561196d57600080fd5b863567ffffffffffffffff8082111561198557600080fd5b6119918a838b0161190f565b909850965060208901359150808211156119aa57600080fd5b6119b68a838b0161190f565b909650945060408901359150808211156119cf57600080fd5b506119dc89828a0161190f565b979a9699509497509295939492505050565b60008060408385031215611a0157600080fd5b8235611a0c816117dd565b946020939093013593505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008060408385031215611a5c57600080fd5b8235611a67816117dd565b9150602083013567ffffffffffffffff80821115611a8457600080fd5b818501915085601f830112611a9857600080fd5b813581811115611aaa57611aaa611a1a565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908382118183101715611af057611af0611a1a565b81604052828152886020848701011115611b0957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b83811015611b46578181015183820152602001611b2e565b50506000910152565b6020815260008251806020840152611b6e816040850160208701611b2b565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b60008060008060608587031215611bb657600080fd5b8435611bc1816117dd565b935060208501359250604085013567ffffffffffffffff811115611be457600080fd5b611bf0878288016117ff565b95989497509550505050565b60008060008060008060008060a0898b031215611c1857600080fd5b8835611c23816117dd565b97506020890135611c33816117dd565b9650604089013567ffffffffffffffff80821115611c5057600080fd5b611c5c8c838d0161190f565b909850965060608b0135915080821115611c7557600080fd5b611c818c838d0161190f565b909650945060808b0135915080821115611c9a57600080fd5b50611ca78b828c016117ff565b999c989b5096995094979396929594505050565b600060208284031215611ccd57600080fd5b8135610540816117dd565b60008060008060008060a08789031215611cf157600080fd5b8635611cfc816117dd565b95506020870135611d0c816117dd565b94506040870135935060608701359250608087013567ffffffffffffffff811115611d3657600080fd5b6119dc89828a016117ff565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112611da657600080fd5b83018035915067ffffffffffffffff821115611dc157600080fd5b60200191503681900382131561184157600080fd5b600060208284031215611de857600080fd5b5051919050565b60008251611e01818460208701611b2b565b9190910192915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fdfea2646970667358221220646ccd794d1cd309da39b56bcfe1238dae05a9d8106dddf47fe099a78d7801e864736f6c63430008170033";
|
|
11
12
|
/**
|
|
12
13
|
* Get the deterministic address for a SimpleAccount
|
|
13
14
|
* @param owner - Owner address of the account
|
|
@@ -17,156 +18,182 @@ export declare const SIMPLE_ACCOUNT_FACTORY_BYTECODE: "0x60806040523480156100105
|
|
|
17
18
|
*/
|
|
18
19
|
export declare function getSimpleAccountAddress(owner: Address, salt: bigint, factoryAddress: Address): Address;
|
|
19
20
|
/**
|
|
20
|
-
* SimpleAccount ABI -
|
|
21
|
+
* SimpleAccount ABI - v0.7 compatible
|
|
21
22
|
*/
|
|
22
23
|
export declare const SIMPLE_ACCOUNT_ABI: readonly [{
|
|
24
|
+
readonly inputs: readonly [];
|
|
25
|
+
readonly name: "entryPoint";
|
|
26
|
+
readonly outputs: readonly [{
|
|
27
|
+
readonly internalType: "contract IEntryPoint";
|
|
28
|
+
readonly name: "";
|
|
29
|
+
readonly type: "address";
|
|
30
|
+
}];
|
|
31
|
+
readonly stateMutability: "view";
|
|
23
32
|
readonly type: "function";
|
|
24
|
-
|
|
33
|
+
}, {
|
|
25
34
|
readonly inputs: readonly [{
|
|
35
|
+
readonly internalType: "address";
|
|
26
36
|
readonly name: "dest";
|
|
27
37
|
readonly type: "address";
|
|
28
38
|
}, {
|
|
39
|
+
readonly internalType: "uint256";
|
|
29
40
|
readonly name: "value";
|
|
30
41
|
readonly type: "uint256";
|
|
31
42
|
}, {
|
|
43
|
+
readonly internalType: "bytes";
|
|
32
44
|
readonly name: "func";
|
|
33
45
|
readonly type: "bytes";
|
|
34
46
|
}];
|
|
47
|
+
readonly name: "execute";
|
|
35
48
|
readonly outputs: readonly [];
|
|
36
49
|
readonly stateMutability: "nonpayable";
|
|
37
|
-
}, {
|
|
38
50
|
readonly type: "function";
|
|
39
|
-
|
|
51
|
+
}, {
|
|
40
52
|
readonly inputs: readonly [{
|
|
53
|
+
readonly internalType: "address[]";
|
|
41
54
|
readonly name: "dest";
|
|
42
55
|
readonly type: "address[]";
|
|
43
56
|
}, {
|
|
57
|
+
readonly internalType: "uint256[]";
|
|
58
|
+
readonly name: "value";
|
|
59
|
+
readonly type: "uint256[]";
|
|
60
|
+
}, {
|
|
61
|
+
readonly internalType: "bytes[]";
|
|
44
62
|
readonly name: "func";
|
|
45
63
|
readonly type: "bytes[]";
|
|
46
64
|
}];
|
|
65
|
+
readonly name: "executeBatch";
|
|
47
66
|
readonly outputs: readonly [];
|
|
48
67
|
readonly stateMutability: "nonpayable";
|
|
68
|
+
readonly type: "function";
|
|
49
69
|
}, {
|
|
70
|
+
readonly inputs: readonly [];
|
|
71
|
+
readonly name: "getNonce";
|
|
72
|
+
readonly outputs: readonly [{
|
|
73
|
+
readonly internalType: "uint256";
|
|
74
|
+
readonly name: "";
|
|
75
|
+
readonly type: "uint256";
|
|
76
|
+
}];
|
|
77
|
+
readonly stateMutability: "view";
|
|
50
78
|
readonly type: "function";
|
|
51
|
-
|
|
79
|
+
}, {
|
|
80
|
+
readonly inputs: readonly [{
|
|
81
|
+
readonly internalType: "address";
|
|
82
|
+
readonly name: "anOwner";
|
|
83
|
+
readonly type: "address";
|
|
84
|
+
}];
|
|
85
|
+
readonly name: "initialize";
|
|
86
|
+
readonly outputs: readonly [];
|
|
87
|
+
readonly stateMutability: "nonpayable";
|
|
88
|
+
readonly type: "function";
|
|
89
|
+
}, {
|
|
90
|
+
readonly inputs: readonly [];
|
|
91
|
+
readonly name: "owner";
|
|
92
|
+
readonly outputs: readonly [{
|
|
93
|
+
readonly internalType: "address";
|
|
94
|
+
readonly name: "";
|
|
95
|
+
readonly type: "address";
|
|
96
|
+
}];
|
|
97
|
+
readonly stateMutability: "view";
|
|
98
|
+
readonly type: "function";
|
|
99
|
+
}, {
|
|
52
100
|
readonly inputs: readonly [{
|
|
53
|
-
readonly name: "userOp";
|
|
54
|
-
readonly type: "tuple";
|
|
55
101
|
readonly components: readonly [{
|
|
102
|
+
readonly internalType: "address";
|
|
56
103
|
readonly name: "sender";
|
|
57
104
|
readonly type: "address";
|
|
58
105
|
}, {
|
|
106
|
+
readonly internalType: "uint256";
|
|
59
107
|
readonly name: "nonce";
|
|
60
108
|
readonly type: "uint256";
|
|
61
109
|
}, {
|
|
110
|
+
readonly internalType: "bytes";
|
|
62
111
|
readonly name: "initCode";
|
|
63
112
|
readonly type: "bytes";
|
|
64
113
|
}, {
|
|
114
|
+
readonly internalType: "bytes";
|
|
65
115
|
readonly name: "callData";
|
|
66
116
|
readonly type: "bytes";
|
|
67
117
|
}, {
|
|
68
|
-
readonly
|
|
69
|
-
readonly
|
|
70
|
-
|
|
71
|
-
readonly name: "verificationGasLimit";
|
|
72
|
-
readonly type: "uint256";
|
|
118
|
+
readonly internalType: "bytes32";
|
|
119
|
+
readonly name: "accountGasLimits";
|
|
120
|
+
readonly type: "bytes32";
|
|
73
121
|
}, {
|
|
122
|
+
readonly internalType: "uint256";
|
|
74
123
|
readonly name: "preVerificationGas";
|
|
75
124
|
readonly type: "uint256";
|
|
76
125
|
}, {
|
|
77
|
-
readonly
|
|
78
|
-
readonly
|
|
79
|
-
|
|
80
|
-
readonly name: "maxPriorityFeePerGas";
|
|
81
|
-
readonly type: "uint256";
|
|
126
|
+
readonly internalType: "bytes32";
|
|
127
|
+
readonly name: "gasFees";
|
|
128
|
+
readonly type: "bytes32";
|
|
82
129
|
}, {
|
|
130
|
+
readonly internalType: "bytes";
|
|
83
131
|
readonly name: "paymasterAndData";
|
|
84
132
|
readonly type: "bytes";
|
|
85
133
|
}, {
|
|
134
|
+
readonly internalType: "bytes";
|
|
86
135
|
readonly name: "signature";
|
|
87
136
|
readonly type: "bytes";
|
|
88
137
|
}];
|
|
138
|
+
readonly internalType: "struct PackedUserOperation";
|
|
139
|
+
readonly name: "userOp";
|
|
140
|
+
readonly type: "tuple";
|
|
89
141
|
}, {
|
|
142
|
+
readonly internalType: "bytes32";
|
|
90
143
|
readonly name: "userOpHash";
|
|
91
144
|
readonly type: "bytes32";
|
|
92
145
|
}, {
|
|
146
|
+
readonly internalType: "uint256";
|
|
93
147
|
readonly name: "missingAccountFunds";
|
|
94
148
|
readonly type: "uint256";
|
|
95
149
|
}];
|
|
150
|
+
readonly name: "validateUserOp";
|
|
96
151
|
readonly outputs: readonly [{
|
|
152
|
+
readonly internalType: "uint256";
|
|
97
153
|
readonly name: "validationData";
|
|
98
154
|
readonly type: "uint256";
|
|
99
155
|
}];
|
|
100
156
|
readonly stateMutability: "nonpayable";
|
|
101
|
-
}, {
|
|
102
|
-
readonly type: "function";
|
|
103
|
-
readonly name: "initialize";
|
|
104
|
-
readonly inputs: readonly [{
|
|
105
|
-
readonly name: "anOwner";
|
|
106
|
-
readonly type: "address";
|
|
107
|
-
}];
|
|
108
|
-
readonly outputs: readonly [];
|
|
109
|
-
readonly stateMutability: "nonpayable";
|
|
110
|
-
}, {
|
|
111
|
-
readonly type: "function";
|
|
112
|
-
readonly name: "owner";
|
|
113
|
-
readonly inputs: readonly [];
|
|
114
|
-
readonly outputs: readonly [{
|
|
115
|
-
readonly name: "";
|
|
116
|
-
readonly type: "address";
|
|
117
|
-
}];
|
|
118
|
-
readonly stateMutability: "view";
|
|
119
|
-
}, {
|
|
120
157
|
readonly type: "function";
|
|
121
|
-
readonly name: "entryPoint";
|
|
122
|
-
readonly inputs: readonly [];
|
|
123
|
-
readonly outputs: readonly [{
|
|
124
|
-
readonly name: "";
|
|
125
|
-
readonly type: "address";
|
|
126
|
-
}];
|
|
127
|
-
readonly stateMutability: "view";
|
|
128
|
-
}, {
|
|
129
|
-
readonly type: "function";
|
|
130
|
-
readonly name: "getNonce";
|
|
131
|
-
readonly inputs: readonly [];
|
|
132
|
-
readonly outputs: readonly [{
|
|
133
|
-
readonly name: "";
|
|
134
|
-
readonly type: "uint256";
|
|
135
|
-
}];
|
|
136
|
-
readonly stateMutability: "view";
|
|
137
158
|
}];
|
|
138
159
|
/**
|
|
139
|
-
* SimpleAccountFactory ABI
|
|
160
|
+
* SimpleAccountFactory ABI - v0.7 compatible
|
|
140
161
|
*/
|
|
141
162
|
export declare const SIMPLE_ACCOUNT_FACTORY_ABI: readonly [{
|
|
142
|
-
readonly type: "function";
|
|
143
|
-
readonly name: "createAccount";
|
|
144
163
|
readonly inputs: readonly [{
|
|
164
|
+
readonly internalType: "address";
|
|
145
165
|
readonly name: "owner";
|
|
146
166
|
readonly type: "address";
|
|
147
167
|
}, {
|
|
168
|
+
readonly internalType: "uint256";
|
|
148
169
|
readonly name: "salt";
|
|
149
170
|
readonly type: "uint256";
|
|
150
171
|
}];
|
|
172
|
+
readonly name: "createAccount";
|
|
151
173
|
readonly outputs: readonly [{
|
|
174
|
+
readonly internalType: "contract SimpleAccount";
|
|
152
175
|
readonly name: "ret";
|
|
153
176
|
readonly type: "address";
|
|
154
177
|
}];
|
|
155
178
|
readonly stateMutability: "nonpayable";
|
|
156
|
-
}, {
|
|
157
179
|
readonly type: "function";
|
|
158
|
-
|
|
180
|
+
}, {
|
|
159
181
|
readonly inputs: readonly [{
|
|
182
|
+
readonly internalType: "address";
|
|
160
183
|
readonly name: "owner";
|
|
161
184
|
readonly type: "address";
|
|
162
185
|
}, {
|
|
186
|
+
readonly internalType: "uint256";
|
|
163
187
|
readonly name: "salt";
|
|
164
188
|
readonly type: "uint256";
|
|
165
189
|
}];
|
|
190
|
+
readonly name: "getAddress";
|
|
166
191
|
readonly outputs: readonly [{
|
|
192
|
+
readonly internalType: "address";
|
|
167
193
|
readonly name: "";
|
|
168
194
|
readonly type: "address";
|
|
169
195
|
}];
|
|
170
196
|
readonly stateMutability: "view";
|
|
197
|
+
readonly type: "function";
|
|
171
198
|
}];
|
|
172
199
|
//# sourceMappingURL=SimpleAccount.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SimpleAccount.d.ts","sourceRoot":"","sources":["../../src/SmartContractWallet/SimpleAccount.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAyE,MAAM,MAAM,CAAC;AAEtG
|
|
1
|
+
{"version":3,"file":"SimpleAccount.d.ts","sourceRoot":"","sources":["../../src/SmartContractWallet/SimpleAccount.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAyE,MAAM,MAAM,CAAC;AAEtG;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,EACnC,g8bAAy8b,CAAC;AAE38b;;GAEG;AACH,eAAO,MAAM,+BAA+B,EAC3C,s8pBAA+8pB,CAAC;AAEj9pB;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,GAAG,OAAO,CActG;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+KrB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiD7B,CAAC"}
|
|
@@ -4,14 +4,15 @@ exports.SIMPLE_ACCOUNT_FACTORY_ABI = exports.SIMPLE_ACCOUNT_ABI = exports.SIMPLE
|
|
|
4
4
|
exports.getSimpleAccountAddress = getSimpleAccountAddress;
|
|
5
5
|
const viem_1 = require("viem");
|
|
6
6
|
/**
|
|
7
|
-
* SimpleAccount bytecode - ERC-4337 compliant account implementation
|
|
8
|
-
* This is
|
|
7
|
+
* SimpleAccount bytecode - ERC-4337 v0.7 compliant account implementation
|
|
8
|
+
* This is the official SimpleAccount from @account-abstraction/contracts v0.7.0
|
|
9
|
+
* Compatible with EntryPoint v0.7 (0x0000000071727De22E5E9d8BAf0edAc6f37da032)
|
|
9
10
|
*/
|
|
10
|
-
exports.SIMPLE_ACCOUNT_BYTECODE = '0x60806040523480156200001157600080fd5b5060405162001a4638038062001a468339810160408190526200003491620000e0565b6001600160a01b0381166200005c5760405163d92e233d60e01b815260040160405180910390fd5b600080546001600160a01b0319166001600160a01b03929092169190911790556200011e565b80516001600160a01b03811681146200009957600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620000d1578181015183820152602001620000b7565b50506000910152565b60008060408385031215620000f457600080fd5b620000ff8362000081565b602084810151919350906001600160401b03808211156200011f57600080fd5b818601915086601f8301126200013457600080fd5b8151818111156200014957620001496200009e565b604051601f8201601f19908116603f011681019083821181831017156200017457620001746200009e565b8160405282815289868487010111156200018d57600080fd5b620001a0836020830160208801620000b4565b80955050505050509250929050565b6118f880620001be6000396000f3fe6080604052600436106100c05760003560e01c8063b61d27f611610074578063c4d66de81161004e578063c4d66de814610234578063d087d28814610254578063f698da251461026957600080fd5b8063b61d27f6146101e1578063b0d691fe14610201578063bc197c811461022157600080fd5b80633a871cdd116100a55780633a871cdd1461017c5780634a58db191461018f5780634d44560d146101c157600080fd5b806318dfb3c7146100c55780633659cfe6146100e7575b600080fd5b3480156100d157600080fd5b506100e56100e0366004611247565b61027e565b005b3480156100f357600080fd5b506100e56101023660046112a9565b50565b34801561011157600080fd5b5061012561012036600461130e565b6102c5565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561014e57600080fd5b5061016261015d366004611361565b6102f9565b604051901515815260200161013b565b6100e561018a3660046113e4565b610389565b34801561019b57600080fd5b506101af6101aa366004611461565b6103f7565b60405190815260200161013b565b3480156101cd57600080fd5b506100e56101dc3660046114a3565b610432565b3480156101ed57600080fd5b506100e56101fc3660046114e5565b610485565b34801561020d57600080fd5b506000546001600160a01b0316610125565b6100e561022f366004611531565b6104e9565b34801561024057600080fd5b506100e561024f3660046112a9565b610528565b34801561026057600080fd5b506101af610596565b34801561027557600080fd5b506101af6105a8565b6000546001600160a01b031633146102a95760405163ea8e4eb560e01b815260040160405180910390fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b60006102f38383604051806020016040528060008152506105ba565b92915050565b6000806103098560000151610596565b90506000610319828601866115f4565b905060006103298287878761060d565b905080156103795761037985858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061066f915050565b5060019695505050505050565b60006103978285018561161d565b90506103a58185858561070b565b6103ef81858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061066f915050565b505050505050565b6000806104068460000151610596565b90506000610416828501856115f4565b90506104248183868661060d565b949350505050565b6000546001600160a01b0316331461045757604051631e4fbdf760e01b815260040160405180910390fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146104b15760405163ea8e4eb560e01b815260040160405180910390fd5b6104e48383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061079292505050565b505050565b6000546001600160a01b031633146105155760405163ea8e4eb560e01b815260040160405180910390fd5b6105218585858561070b565b5050505050565b6000546001600160a01b03161561055257604051633ab534b960e21b815260040160405180910390fd5b6001600160a01b03811661057957604051631e4fbdf760e01b815260040160405180910390fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b60006105a3600143611690565b905090565b60006105a34261ffff16610596565b6000806105c9858585856107e3565b90506105d481610862565b6105f05760405163815e1d6460e01b815260040160405180910390fd5b6105fc858585856108a8565b9150505b9392505050565b6000806106188686868660006108f8565b905060006106258261097d565b90506001600160a01b03811661064e57604051631e4fbdf760e01b815260040160405180910390fd5b6000546001600160a01b039081169116149695505050505050565b6000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146106bc576040519150601f19603f3d011682016040523d82523d6000602084013e6106c1565b606091505b50509050806104e45760405162461bcd60e51b815260206004820152601360248201527211985a5b1959081d1c985b9cd9995c8819985a5b606a1b60448201526064015b60405180910390fd5b600061071a8560000151610596565b9050600061072a828601866115f4565b9050600061073a8287878761060d565b90508061075a57604051638baa579f60e01b815260040160405180910390fd5b61078988858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061079292505050565b50505050505050565b6000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146106bc576040519150601f19603f3d011682016040523d82523d6000602084013e6106c1565b6000806107f3868686868661099c565b905060006107fe8261097d565b90506001600160a01b03811661082757604051631e4fbdf760e01b815260040160405180910390fd5b6001546001600160a01b039081169116149695505050505050565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061089657508115155b80156108a057508115155b949350505050565b60006108b7858585858661099c565b905060006108c48261097d565b90506001600160a01b0381166108ed57604051631e4fbdf760e01b815260040160405180910390fd5b979650505050505050565b60008061090a8888888888886109f4565b90506000610917826109fd565b905060006109248261097d565b90506001600160a01b03811661094d57604051631e4fbdf760e01b815260040160405180910390fd5b6000546001600160a01b039081169116149998505050505050505050565b600061098c8260001c610a2e565b6001600160a01b031692915050565b60006109ab868686868661099c565b905060006109b88261097d565b90506001600160a01b0381166109e157604051631e4fbdf760e01b815260040160405180910390fd5b6001600160a01b03169695505050505050565b60009695505050505050565b6000610a0882610a3e565b8051909150610a16816109fd565b6001600160a01b0316949350505050565b6000610a3982610a3e565b519392505050565b606081600001518260200151836040015184606001518560800151604051602001610a70959493929190611690565b6040516020818303038152906040529050919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715610ac457610ac4610a85565b604052919050565b60006001600160401b03821115610ae557610ae5610a85565b50601f01601f191660200190565b600082601f830112610b0457600080fd5b8135610b17610b1282610acc565b610a9b565b818152846020838601011115610b2c57600080fd5b816020850160208301376000918101602001919091529392505050565b80356001600160a01b0381168114610b6057600080fd5b919050565b600060208284031215610b7757600080fd5b610b8082610b49565b9392505050565b60008060408385031215610b9a57600080fd5b610ba383610b49565b946020939093013593505050565b60008060408385031215610bc457600080fd5b823567ffffffffffffffff80821115610bdc57600080fd5b610be886838701610af3565b93506020850135915080821115610bfe57600080fd5b50610c0b85828601610af3565b9150509250929050565b600060208284031215610c2757600080fd5b5035919050565b60008060408385031215610c4157600080fd5b50508035926020909101359150565b60008060408385031215610c6357600080fd5b610c6c83610b49565b9150602083013567ffffffffffffffff811115610c8857600080fd5b610c0b85828601610af3565b600080600060608486031215610ca957600080fd5b610cb284610b49565b925060208401359150604084013567ffffffffffffffff811115610cd557600080fd5b610ce186828701610af3565b9150509250925092565b60005b83811015610d06578181015183820152602001610cee565b50506000910152565b60008151808452610d27816020860160208601610ceb565b601f01601f19169290920160200192915050565b602081526000610b806020830184610d0f565b600080600060608486031215610d6357600080fd5b610d6c84610b49565b9250610d7a60208501610b49565b9150604084013567ffffffffffffffff811115610cd557600080fd5b600080600080600060a08688031215610dae57600080fd5b610db786610b49565b9450610dc560208701610b49565b9350604086013567ffffffffffffffff80821115610de257600080fd5b610dee89838a01610af3565b94506060880135915080821115610e0457600080fd5b610e1089838a01610af3565b93506080880135915080821115610e2657600080fd5b50610e3388828901610af3565b9150509295509295909350565b634e487b7160e01b600052601160045260246000fd5b818103818111156102f3576102f3610e40565b60008251610e81818460208701610ceb565b919091019291505056fea2646970667358221220a1b5c5c8d8e7f8e9f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff000102030405060764736f6c63430008150033';
|
|
11
|
+
exports.SIMPLE_ACCOUNT_BYTECODE = '0x60c034610142576001600160401b0390601f611bde38819003918201601f1916830191848311848410176101475780849260209460405283398101031261014257516001600160a01b0381168103610142573060805260a0527ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a009081549060ff8260401c166101305780808316036100eb575b604051611a80908161015e82396080518181816108ff0152610afd015260a05181818161036701528181610611015281816106f001528181610ce501528181610ebc015281816111a40152818161149c015261164e0152f35b6001600160401b031990911681179091556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a1388080610092565b60405163f92ee8a960e01b8152600490fd5b600080fd5b634e487b7160e01b600052604160045260246000fdfe6080604052600436101561001b575b361561001957600080fd5b005b60003560e01c806301ffc9a71461012b578063150b7a021461012657806319822f7c1461012157806347e1da2a1461011c5780634a58db19146101175780634d44560d146101125780634f1ef2861461010d57806352d1902d146101085780638da5cb5b14610103578063ad3cb1cc146100fe578063b0d691fe146100f9578063b61d27f6146100f4578063bc197c81146100ef578063c399ec88146100ea578063c4d66de8146100e5578063d087d288146100e05763f23a6e610361000e57611207565b611125565b610f15565b610e44565b610d7d565b610d09565b610c9a565b610bc9565b610b77565b610ab7565b61087f565b610692565b6105cf565b610484565b6102fd565b61026c565b3461021b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b576004357fffffffff00000000000000000000000000000000000000000000000000000000811680910361021b57807f150b7a0200000000000000000000000000000000000000000000000000000000602092149081156101f1575b81156101c7575b506040519015158152f35b7f01ffc9a700000000000000000000000000000000000000000000000000000000915014386101bc565b7f4e2312e000000000000000000000000000000000000000000000000000000000811491506101b5565b600080fd5b73ffffffffffffffffffffffffffffffffffffffff81160361021b57565b9181601f8401121561021b5782359167ffffffffffffffff831161021b576020838186019501011161021b57565b3461021b5760807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b576102a6600435610220565b6102b1602435610220565b60643567ffffffffffffffff811161021b576102d190369060040161023e565b505060206040517f150b7a02000000000000000000000000000000000000000000000000000000008152f35b3461021b577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc60608136011261021b576004359067ffffffffffffffff821161021b5761012090823603011261021b5760443573ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001633036103f5576103a06103b892602435906004016113d5565b90806103bc575b506040519081529081906020820190565b0390f35b600080808093337ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1506103ee611454565b50386103a7565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f6163636f756e743a206e6f742066726f6d20456e747279506f696e74000000006044820152fd5b9181601f8401121561021b5782359167ffffffffffffffff831161021b576020808501948460051b01011161021b57565b3461021b5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b5767ffffffffffffffff60043581811161021b576104d4903690600401610453565b60249291923582811161021b576104ef903690600401610453565b9260443590811161021b57610508903690600401610453565b939091610513611484565b848414806105be575b61052590611298565b8161057257505060005b82811061053857005b8061056c61055161054c600194878a61132c565b611341565b61056661055f84898861139f565b3691610848565b9061153a565b0161052f565b91909460009493945b85811061058457005b806105b861059861054c6001948a8761132c565b6105a3838b8961132c565b356105b261055f858b8a61139f565b91611562565b0161057b565b5081158061051c575081851461051c565b6000807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261068f5773ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001681813b1561068f57602491604051928380927fb760faf900000000000000000000000000000000000000000000000000000000825230600483015234905af1801561068a5761067e575080f35b61068790610798565b80f35b6113ba565b80fd5b3461021b57600060407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261068f576004356106cf81610220565b6106d7611579565b8173ffffffffffffffffffffffffffffffffffffffff807f00000000000000000000000000000000000000000000000000000000000000001692833b15610765576044908360405195869485937f205c287800000000000000000000000000000000000000000000000000000000855216600484015260243560248401525af1801561068a5761067e575080f35b8280fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b67ffffffffffffffff81116107ac57604052565b610769565b6040810190811067ffffffffffffffff8211176107ac57604052565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176107ac57604052565b67ffffffffffffffff81116107ac57601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b9291926108548261080e565b9161086260405193846107cd565b82948184528183011161021b578281602093846000960137010152565b60407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b5760048035906108b782610220565b60243567ffffffffffffffff811161021b573660238201121561021b576108e79036906024818501359101610848565b73ffffffffffffffffffffffffffffffffffffffff807f000000000000000000000000000000000000000000000000000000000000000016803014908115610a89575b50610a6057906020839261093c611579565b604051938480927f52d1902d00000000000000000000000000000000000000000000000000000000825288165afa60009281610a2f575b506109c75750506040517f4c9c8ce300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff90921690820190815281906020010390fd5b83837f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc84036109fa576100198383611695565b6040517faa1d49a400000000000000000000000000000000000000000000000000000000815290810184815281906020010390fd5b610a5291935060203d602011610a59575b610a4a81836107cd565b8101906113c6565b9138610973565b503d610a40565b826040517fe07c8dba000000000000000000000000000000000000000000000000000000008152fd5b9050817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541614153861092a565b3461021b5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b5773ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000163003610b4d5760206040517f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8152f35b60046040517fe07c8dba000000000000000000000000000000000000000000000000000000008152fd5b3461021b5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b57602073ffffffffffffffffffffffffffffffffffffffff60005416604051908152f35b3461021b5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b576040805190610c06826107b1565b600582526020907f352e302e300000000000000000000000000000000000000000000000000000006020840152604051916020835283519182602085015260005b838110610c8757846040817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f88600085828601015201168101030190f35b8581018301518582018301528201610c47565b3461021b5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b57602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b3461021b5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b57600435610d4481610220565b6044359067ffffffffffffffff821161021b57610d73610d6b61001993369060040161023e565b61055f611484565b9060243590611562565b3461021b5760a07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b57610db7600435610220565b610dc2602435610220565b67ffffffffffffffff60443581811161021b57610de3903690600401610453565b505060643581811161021b57610dfd903690600401610453565b505060843590811161021b57610e1790369060040161023e565b50506040517fbc197c81000000000000000000000000000000000000000000000000000000008152602090f35b3461021b5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b576040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015260208160248173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165afa801561068a57602091600091610ef8575b50604051908152f35b610f0f9150823d8411610a5957610a4a81836107cd565b38610eef565b3461021b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b57600435610f5081610220565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00549067ffffffffffffffff60ff8360401c161592168015908161111d575b6001149081611113575b15908161110a575b506110e0576110039082610ffa7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0060017fffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000825416179055565b61108457611609565b61100957005b6110557ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a007fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff8154169055565b604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a1005b6110db7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00680100000000000000007fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff825416179055565b611609565b60046040517ff92ee8a9000000000000000000000000000000000000000000000000000000008152fd5b90501538610fa1565b303b159150610f99565b839150610f8f565b3461021b5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b576040517f35567e1a0000000000000000000000000000000000000000000000000000000081523060048201526000602482015260208160448173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165afa801561068a576103b8916000916111e857506040519081529081906020820190565b611201915060203d602011610a5957610a4a81836107cd565b386103a7565b3461021b5760a07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021b57611241600435610220565b61124c602435610220565b60843567ffffffffffffffff811161021b5761126c90369060040161023e565b505060206040517ff23a6e61000000000000000000000000000000000000000000000000000000008152f35b1561129f57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f77726f6e67206172726179206c656e67746873000000000000000000000000006044820152fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b919081101561133c5760051b0190565b6112fd565b3561134b81610220565b90565b9035907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18136030182121561021b570180359067ffffffffffffffff821161021b5760200191813603831361021b57565b9082101561133c576113b69160051b81019061134e565b9091565b6040513d6000823e3d90fd5b9081602091031261021b575190565b907f19457468657265756d205369676e6564204d6573736167653a0a333200000000600052601c52603c60002061144461143b73ffffffffffffffffffffffffffffffffffffffff9261143561055f85600054169661010081019061134e565b906117af565b90929192611824565b160361144f57600090565b600190565b3d1561147f573d906114658261080e565b9161147360405193846107cd565b82523d6000602084013e565b606090565b73ffffffffffffffffffffffffffffffffffffffff807f000000000000000000000000000000000000000000000000000000000000000016331490811561152c575b50156114ce57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602060248201527f6163636f756e743a206e6f74204f776e6572206f7220456e747279506f696e746044820152fd5b9050600054163314386114c6565b600091829182602083519301915af1611551611454565b901561155a5750565b602081519101fd5b916000928392602083519301915af1611551611454565b73ffffffffffffffffffffffffffffffffffffffff6000541633148015611600575b156115a257565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f6f6e6c79206f776e6572000000000000000000000000000000000000000000006044820152fd5b5030331461159b565b73ffffffffffffffffffffffffffffffffffffffff80911690817fffffffffffffffffffffffff000000000000000000000000000000000000000060005416176000557f0000000000000000000000000000000000000000000000000000000000000000167f47e55c76e7a6f1fd8996a1da8008c1ea29699cca35e7bcd057f2dec313b6e5de600080a3565b90813b156117685773ffffffffffffffffffffffffffffffffffffffff82167f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc817fffffffffffffffffffffffff00000000000000000000000000000000000000008254161790557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b600080a280511561173557611732916118fb565b50565b50503461173e57565b60046040517fb398979f000000000000000000000000000000000000000000000000000000008152fd5b60248273ffffffffffffffffffffffffffffffffffffffff604051917f4c9c8ce3000000000000000000000000000000000000000000000000000000008352166004820152fd5b81519190604183036117e0576117d992506020820151906060604084015193015160001a90611919565b9192909190565b505060009160029190565b600411156117f557565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b61182d816117eb565b80611836575050565b61183f816117eb565b600181036118715760046040517ff645eedf000000000000000000000000000000000000000000000000000000008152fd5b61187a816117eb565b600281036118b4576040517ffce698f700000000000000000000000000000000000000000000000000000000815260048101839052602490fd5b806118c06003926117eb565b146118c85750565b6040517fd78bce0c0000000000000000000000000000000000000000000000000000000081526004810191909152602490fd5b60008061134b93602081519101845af4611913611454565b916119aa565b91907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0841161199e57926020929160ff608095604051948552168484015260408301526060820152600092839182805260015afa1561068a57805173ffffffffffffffffffffffffffffffffffffffff81161561199557918190565b50809160019190565b50505060009160039190565b906119e957508051156119bf57805190602001fd5b60046040517f1425ea42000000000000000000000000000000000000000000000000000000008152fd5b81511580611a41575b6119fa575090565b60249073ffffffffffffffffffffffffffffffffffffffff604051917f9996b315000000000000000000000000000000000000000000000000000000008352166004820152fd5b50803b156119f256fea2646970667358221220b5c215ee5fa04abf2dfcb3c8c197be24579578cbe6acba031df06992353e35c464736f6c63430008170033';
|
|
11
12
|
/**
|
|
12
|
-
* SimpleAccountFactory bytecode - Factory for deploying SimpleAccount instances
|
|
13
|
+
* SimpleAccountFactory bytecode - Factory for deploying SimpleAccount instances (v0.7)
|
|
13
14
|
*/
|
|
14
|
-
exports.SIMPLE_ACCOUNT_FACTORY_BYTECODE = '0x608060405234801561001057600080fd5b506040516107e83803806107e883398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b610755806100936000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80635fbfb9cf146100465780638cb84e1814610072578063fc6f94680461009f575b600080fd5b610059610054366004610585565b6100b2565b6040516001600160a01b03909116815260200160405180910390f35b6100596100803660046105b7565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6100596100ad366004610585565b6100c6565b60006100bf8383306101c1565b9392505050565b6000806100d48585856100b2565b90506001600160a01b0381163b6100f5576100ef85856102b5565b506100bf565b949350505050565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b03811661019f5760405162461bcd60e51b815260206004820152601760248201527f437265617465323a204661696c6564206f6e206465706c6f7900000000000000604482015260640160405180910390fd5b92915050565b6000816040516020016101b891906105e9565b60405160208183030381529060405280519060200120905092915050565b6000838383604051602001610200939291909283526001600160a01b03918216602084015216604082015260600190565b6040516020818303038152906040528051906020012090509392505050565b6000546040516001600160a01b0390911690610240908490849060240161063a565b60408051601f198184030181529181526020820180516001600160e01b031663189acdbd60e31b179052516102759190610665565b6000604051808303816000865af19150503d80600081146102b2576040519150601f19603f3d011682016040523d82523d6000602084013e6102b7565b606091505b5050505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663189acdbd60e31b17905261030c9061031c565b505050565b6000546001600160a01b031690565b6000610371826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166103ce9092919063ffffffff16565b80519091501561030c578080602001905181019061038f9190610681565b61030c5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840160405180910390fd5b60606103dd84846000856103e5565b949350505050565b6060824710156104465760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840160405180910390fd5b843b6104945760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640160405180910390fd5b600080866001600160a01b031685876040516104b09190610665565b60006040518083038185875af1925050503d80600081146104ed576040519150601f19603f3d011682016040523d82523d6000602084013e6104f2565b606091505b509150915061050282828661050d565b979650505050505050565b6060831561051c5750816100bf565b82511561052c5782518084602001fd5b8160405162461bcd60e51b81526004016105469190610699565b60405180910390fd5b80356001600160a01b038116811461056657600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561059857600080fd5b6105a18361054f565b91506105af6020840161054f565b90509250929050565b600080604083850312156105cb57600080fd5b6105d48361054f565b91506105af6020840161054f565b60006105f48261054f565b9392505050565b6000815180845260005b8181101561062157602081850181015186830182015201610605565b506000602082860101526020601f19601f83011685010191505092915050565b6001600160a01b038316815260406020820181905260009061065e908301846105fb565b95945050505050565b600082516106798184602087016105fb565b919091019291505050565b60006020828403121561069657600080fd5b815180151581146100bf57600080fd5b6020815260006105f460208301846105fb56fea2646970667358221220b1c2d3e4f5a6b7c8d9e0f1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b1c264736f6c63430008150033';
|
|
15
|
+
exports.SIMPLE_ACCOUNT_FACTORY_BYTECODE = '0x60a060405234801561001057600080fd5b506040516129e13803806129e183398101604081905261002f91610088565b8060405161003c9061007b565b6001600160a01b039091168152602001604051809103906000f080158015610068573d6000803e3d6000fd5b506001600160a01b0316608052506100b8565b612011806109d083390190565b60006020828403121561009a57600080fd5b81516001600160a01b03811681146100b157600080fd5b9392505050565b6080516108f06100e060003960008181604b01528181610114015261025801526108f06000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806311464fbe146100465780635fbfb9cf146100965780638cb84e18146100a9575b600080fd5b61006d7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b61006d6100a436600461039d565b6100bc565b61006d6100b736600461039d565b6101ee565b6000806100c984846101ee565b905073ffffffffffffffffffffffffffffffffffffffff81163b80156100f1575090506101e8565b60405173ffffffffffffffffffffffffffffffffffffffff8616602482015284907f000000000000000000000000000000000000000000000000000000000000000090604401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fc4d66de800000000000000000000000000000000000000000000000000000000179052516101b790610390565b6101c2929190610406565b8190604051809103906000f59050801580156101e2573d6000803e3d6000fd5b50925050505b92915050565b60006103578260001b6040518060200161020790610390565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe082820381018352601f90910116604081905273ffffffffffffffffffffffffffffffffffffffff871660248201527f000000000000000000000000000000000000000000000000000000000000000090604401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152918152602080830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fc4d66de800000000000000000000000000000000000000000000000000000000179052905161030093929101610406565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529082905261033c9291602001610474565b6040516020818303038152906040528051906020012061035e565b9392505050565b60006103578383306000604051836040820152846020820152828152600b8101905060ff815360559020949350505050565b610417806104a483390190565b600080604083850312156103b057600080fd5b823573ffffffffffffffffffffffffffffffffffffffff811681146103d457600080fd5b946020939093013593505050565b60005b838110156103fd5781810151838201526020016103e5565b50506000910152565b73ffffffffffffffffffffffffffffffffffffffff8316815260406020820152600082518060408401526104418160608501602087016103e2565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016919091016060019392505050565b600083516104868184602088016103e2565b83519083019061049a8183602088016103e2565b0194935050505056fe608060405260405161041738038061041783398101604081905261002291610268565b61002c8282610033565b5050610352565b61003c82610092565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a280511561008657610081828261010e565b505050565b61008e610185565b5050565b806001600160a01b03163b6000036100cd57604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b03168460405161012b9190610336565b600060405180830381855af49150503d8060008114610166576040519150601f19603f3d011682016040523d82523d6000602084013e61016b565b606091505b50909250905061017c8583836101a6565b95945050505050565b34156101a45760405163b398979f60e01b815260040160405180910390fd5b565b6060826101bb576101b682610205565b6101fe565b81511580156101d257506001600160a01b0384163b155b156101fb57604051639996b31560e01b81526001600160a01b03851660048201526024016100c4565b50805b9392505050565b8051156102155780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b634e487b7160e01b600052604160045260246000fd5b60005b8381101561025f578181015183820152602001610247565b50506000910152565b6000806040838503121561027b57600080fd5b82516001600160a01b038116811461029257600080fd5b60208401519092506001600160401b03808211156102af57600080fd5b818501915085601f8301126102c357600080fd5b8151818111156102d5576102d561022e565b604051601f8201601f19908116603f011681019083821181831017156102fd576102fd61022e565b8160405282815288602084870101111561031657600080fd5b610327836020830160208801610244565b80955050505050509250929050565b60008251610348818460208701610244565b9190910192915050565b60b7806103606000396000f3fe6080604052600a600c565b005b60186014601a565b605e565b565b600060597f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5473ffffffffffffffffffffffffffffffffffffffff1690565b905090565b3660008037600080366000845af43d6000803e808015607c573d6000f35b3d6000fdfea2646970667358221220d7f23a80daebb5531c9e4a18d87e812fca112e5df7e56433218edcc12bbe415d64736f6c63430008170033a2646970667358221220f5be4d2659f1a124e46d76b875ad5264a1c62d421946ca067d6132fa6cc4309964736f6c6343000817003360c0604052306080523480156200001557600080fd5b50604051620020113803806200201183398101604081905262000038916200010a565b6001600160a01b03811660a0526200004f62000056565b506200013c565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff1615620000a75760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b0390811614620001075780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6000602082840312156200011d57600080fd5b81516001600160a01b03811681146200013557600080fd5b9392505050565b60805160a051611e70620001a160003960008181610320015281816106f00152818161079e0152818161092601528181610b6301528181610baa01528181610d6a015261121e015260008181610f3301528181610f5c015261117d0152611e706000f3fe6080604052600436106101125760003560e01c80638da5cb5b116100a5578063bc197c8111610074578063c4d66de811610059578063c4d66de8146103c1578063d087d288146103e1578063f23a6e61146103f657600080fd5b8063bc197c8114610364578063c399ec88146103ac57600080fd5b80638da5cb5b14610269578063ad3cb1cc146102bb578063b0d691fe14610311578063b61d27f61461034457600080fd5b80634a58db19116100e15780634a58db19146102195780634d44560d146102215780634f1ef2861461024157806352d1902d1461025457600080fd5b806301ffc9a71461011e578063150b7a021461015357806319822f7c146101c957806347e1da2a146101f757600080fd5b3661011957005b600080fd5b34801561012a57600080fd5b5061013e61013936600461179b565b61043c565b60405190151581526020015b60405180910390f35b34801561015f57600080fd5b5061019861016e366004611848565b7f150b7a020000000000000000000000000000000000000000000000000000000095945050505050565b6040517fffffffff00000000000000000000000000000000000000000000000000000000909116815260200161014a565b3480156101d557600080fd5b506101e96101e43660046118bb565b610521565b60405190815260200161014a565b34801561020357600080fd5b50610217610212366004611954565b610547565b005b6102176106ee565b34801561022d57600080fd5b5061021761023c3660046119ee565b610794565b61021761024f366004611a49565b610843565b34801561026057600080fd5b506101e9610862565b34801561027557600080fd5b506000546102969073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161014a565b3480156102c757600080fd5b506103046040518060400160405280600581526020017f352e302e3000000000000000000000000000000000000000000000000000000081525081565b60405161014a9190611b4f565b34801561031d57600080fd5b507f0000000000000000000000000000000000000000000000000000000000000000610296565b34801561035057600080fd5b5061021761035f366004611ba0565b610891565b34801561037057600080fd5b5061019861037f366004611bfc565b7fbc197c810000000000000000000000000000000000000000000000000000000098975050505050505050565b3480156103b857600080fd5b506101e96108e0565b3480156103cd57600080fd5b506102176103dc366004611cbb565b610997565b3480156103ed57600080fd5b506101e9610b16565b34801561040257600080fd5b50610198610411366004611cd8565b7ff23a6e61000000000000000000000000000000000000000000000000000000009695505050505050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f150b7a020000000000000000000000000000000000000000000000000000000014806104cf57507fffffffff0000000000000000000000000000000000000000000000000000000082167f4e2312e000000000000000000000000000000000000000000000000000000000145b8061051b57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b600061052b610b92565b6105358484610c33565b905061054082610ce7565b9392505050565b61054f610d52565b8481148015610565575082158061056557508281145b6105d0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f77726f6e67206172726179206c656e677468730000000000000000000000000060448201526064015b60405180910390fd5b600083900361067c5760005b858110156106765761066e8787838181106105f9576105f9611d42565b905060200201602081019061060e9190611cbb565b600085858581811061062257610622611d42565b90506020028101906106349190611d71565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610e1392505050565b6001016105dc565b506106e6565b60005b858110156106e4576106dc87878381811061069c5761069c611d42565b90506020020160208101906106b19190611cbb565b8686848181106106c3576106c3611d42565b9050602002013585858581811061062257610622611d42565b60010161067f565b505b505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006040517fb760faf900000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff919091169063b760faf99034906024016000604051808303818588803b15801561077957600080fd5b505af115801561078d573d6000803e3d6000fd5b5050505050565b61079c610e90565b7f00000000000000000000000000000000000000000000000000000000000000006040517f205c287800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff848116600483015260248201849052919091169063205c287890604401600060405180830381600087803b15801561082f57600080fd5b505af11580156106e6573d6000803e3d6000fd5b61084b610f1b565b6108548261101f565b61085e8282611027565b5050565b600061086c611165565b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc90565b610899610d52565b6108da848484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610e1392505050565b50505050565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015260009073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016906370a08231906024015b602060405180830381865afa15801561096e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109929190611dd6565b905090565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff166000811580156109e25750825b905060008267ffffffffffffffff1660011480156109ff5750303b155b905081158015610a0d575080155b15610a44576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001660011785558315610aa55784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff16680100000000000000001785555b610aae866111d4565b83156106e65784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a1505050505050565b6040517f35567e1a0000000000000000000000000000000000000000000000000000000081523060048201526000602482018190529073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016906335567e1a90604401610951565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610c31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f6163636f756e743a206e6f742066726f6d20456e747279506f696e740000000060448201526064016105c7565b565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000006000908152601c829052603c8120610cae81610c74610100870187611d71565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061126892505050565b60005473ffffffffffffffffffffffffffffffffffffffff908116911614610cda57600191505061051b565b5060009392505050565b50565b8015610ce45760405160009033907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90849084818181858888f193505050503d806000811461078d576040519150601f19603f3d011682016040523d82523d6000602084013e61078d565b3373ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000161480610dad575060005473ffffffffffffffffffffffffffffffffffffffff1633145b610c31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f6163636f756e743a206e6f74204f776e6572206f7220456e747279506f696e7460448201526064016105c7565b6000808473ffffffffffffffffffffffffffffffffffffffff168484604051610e3c9190611def565b60006040518083038185875af1925050503d8060008114610e79576040519150601f19603f3d011682016040523d82523d6000602084013e610e7e565b606091505b50915091508161078d57805160208201fd5b60005473ffffffffffffffffffffffffffffffffffffffff16331480610eb557503330145b610c31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f6f6e6c79206f776e65720000000000000000000000000000000000000000000060448201526064016105c7565b3073ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000161480610fe857507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16610fcf7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610c31576040517fe07c8dba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610ce4610e90565b8173ffffffffffffffffffffffffffffffffffffffff166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156110ac575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682019092526110a991810190611dd6565b60015b6110fa576040517f4c9c8ce300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff831660048201526024016105c7565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8114611156576040517faa1d49a4000000000000000000000000000000000000000000000000000000008152600481018290526024016105c7565b6111608383611292565b505050565b3073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610c31576040517fe07c8dba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff838116918217835560405191927f0000000000000000000000000000000000000000000000000000000000000000909116917f47e55c76e7a6f1fd8996a1da8008c1ea29699cca35e7bcd057f2dec313b6e5de9190a350565b60008060008061127886866112f5565b9250925092506112888282611342565b5090949350505050565b61129b82611446565b60405173ffffffffffffffffffffffffffffffffffffffff8316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156112ed576111608282611515565b61085e611598565b6000806000835160410361132f5760208401516040850151606086015160001a611321888285856115d0565b95509550955050505061133b565b50508151600091506002905b9250925092565b600082600381111561135657611356611e0b565b0361135f575050565b600182600381111561137357611373611e0b565b036113aa576040517ff645eedf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60028260038111156113be576113be611e0b565b036113f8576040517ffce698f7000000000000000000000000000000000000000000000000000000008152600481018290526024016105c7565b600382600381111561140c5761140c611e0b565b0361085e576040517fd78bce0c000000000000000000000000000000000000000000000000000000008152600481018290526024016105c7565b8073ffffffffffffffffffffffffffffffffffffffff163b6000036114af576040517f4c9c8ce300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821660048201526024016105c7565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60606000808473ffffffffffffffffffffffffffffffffffffffff168460405161153f9190611def565b600060405180830381855af49150503d806000811461157a576040519150601f19603f3d011682016040523d82523d6000602084013e61157f565b606091505b509150915061158f8583836116ca565b95945050505050565b3415610c31576040517fb398979f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084111561160b57506000915060039050826116c0565b604080516000808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa15801561165f573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff81166116b6575060009250600191508290506116c0565b9250600091508190505b9450945094915050565b6060826116df576116da82611759565b610540565b8151158015611703575073ffffffffffffffffffffffffffffffffffffffff84163b155b15611752576040517f9996b31500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff851660048201526024016105c7565b5080610540565b8051156117695780518082602001fd5b6040517f1425ea4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000602082840312156117ad57600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461054057600080fd5b73ffffffffffffffffffffffffffffffffffffffff81168114610ce457600080fd5b60008083601f84011261181157600080fd5b50813567ffffffffffffffff81111561182957600080fd5b60208301915083602082850101111561184157600080fd5b9250929050565b60008060008060006080868803121561186057600080fd5b853561186b816117dd565b9450602086013561187b816117dd565b935060408601359250606086013567ffffffffffffffff81111561189e57600080fd5b6118aa888289016117ff565b969995985093965092949392505050565b6000806000606084860312156118d057600080fd5b833567ffffffffffffffff8111156118e757600080fd5b840161012081870312156118fa57600080fd5b95602085013595506040909401359392505050565b60008083601f84011261192157600080fd5b50813567ffffffffffffffff81111561193957600080fd5b6020830191508360208260051b850101111561184157600080fd5b6000806000806000806060878903121561196d57600080fd5b863567ffffffffffffffff8082111561198557600080fd5b6119918a838b0161190f565b909850965060208901359150808211156119aa57600080fd5b6119b68a838b0161190f565b909650945060408901359150808211156119cf57600080fd5b506119dc89828a0161190f565b979a9699509497509295939492505050565b60008060408385031215611a0157600080fd5b8235611a0c816117dd565b946020939093013593505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008060408385031215611a5c57600080fd5b8235611a67816117dd565b9150602083013567ffffffffffffffff80821115611a8457600080fd5b818501915085601f830112611a9857600080fd5b813581811115611aaa57611aaa611a1a565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908382118183101715611af057611af0611a1a565b81604052828152886020848701011115611b0957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b83811015611b46578181015183820152602001611b2e565b50506000910152565b6020815260008251806020840152611b6e816040850160208701611b2b565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b60008060008060608587031215611bb657600080fd5b8435611bc1816117dd565b935060208501359250604085013567ffffffffffffffff811115611be457600080fd5b611bf0878288016117ff565b95989497509550505050565b60008060008060008060008060a0898b031215611c1857600080fd5b8835611c23816117dd565b97506020890135611c33816117dd565b9650604089013567ffffffffffffffff80821115611c5057600080fd5b611c5c8c838d0161190f565b909850965060608b0135915080821115611c7557600080fd5b611c818c838d0161190f565b909650945060808b0135915080821115611c9a57600080fd5b50611ca78b828c016117ff565b999c989b5096995094979396929594505050565b600060208284031215611ccd57600080fd5b8135610540816117dd565b60008060008060008060a08789031215611cf157600080fd5b8635611cfc816117dd565b95506020870135611d0c816117dd565b94506040870135935060608701359250608087013567ffffffffffffffff811115611d3657600080fd5b6119dc89828a016117ff565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112611da657600080fd5b83018035915067ffffffffffffffff821115611dc157600080fd5b60200191503681900382131561184157600080fd5b600060208284031215611de857600080fd5b5051919050565b60008251611e01818460208701611b2b565b9190910192915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fdfea2646970667358221220646ccd794d1cd309da39b56bcfe1238dae05a9d8106dddf47fe099a78d7801e864736f6c63430008170033';
|
|
15
16
|
/**
|
|
16
17
|
* Get the deterministic address for a SimpleAccount
|
|
17
18
|
* @param owner - Owner address of the account
|
|
@@ -30,109 +31,235 @@ function getSimpleAccountAddress(owner, salt, factoryAddress) {
|
|
|
30
31
|
return `0x${create2Address.slice(-40)}`;
|
|
31
32
|
}
|
|
32
33
|
/**
|
|
33
|
-
* SimpleAccount ABI -
|
|
34
|
+
* SimpleAccount ABI - v0.7 compatible
|
|
34
35
|
*/
|
|
35
36
|
exports.SIMPLE_ACCOUNT_ABI = [
|
|
36
37
|
{
|
|
37
|
-
|
|
38
|
-
name:
|
|
39
|
-
|
|
40
|
-
{
|
|
41
|
-
|
|
42
|
-
|
|
38
|
+
"inputs": [],
|
|
39
|
+
"name": "entryPoint",
|
|
40
|
+
"outputs": [
|
|
41
|
+
{
|
|
42
|
+
"internalType": "contract IEntryPoint",
|
|
43
|
+
"name": "",
|
|
44
|
+
"type": "address"
|
|
45
|
+
}
|
|
43
46
|
],
|
|
44
|
-
|
|
45
|
-
|
|
47
|
+
"stateMutability": "view",
|
|
48
|
+
"type": "function"
|
|
46
49
|
},
|
|
47
50
|
{
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
51
|
+
"inputs": [
|
|
52
|
+
{
|
|
53
|
+
"internalType": "address",
|
|
54
|
+
"name": "dest",
|
|
55
|
+
"type": "address"
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"internalType": "uint256",
|
|
59
|
+
"name": "value",
|
|
60
|
+
"type": "uint256"
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"internalType": "bytes",
|
|
64
|
+
"name": "func",
|
|
65
|
+
"type": "bytes"
|
|
66
|
+
}
|
|
53
67
|
],
|
|
54
|
-
|
|
55
|
-
|
|
68
|
+
"name": "execute",
|
|
69
|
+
"outputs": [],
|
|
70
|
+
"stateMutability": "nonpayable",
|
|
71
|
+
"type": "function"
|
|
56
72
|
},
|
|
57
73
|
{
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
{ name: 'callData', type: 'bytes' },
|
|
69
|
-
{ name: 'callGasLimit', type: 'uint256' },
|
|
70
|
-
{ name: 'verificationGasLimit', type: 'uint256' },
|
|
71
|
-
{ name: 'preVerificationGas', type: 'uint256' },
|
|
72
|
-
{ name: 'maxFeePerGas', type: 'uint256' },
|
|
73
|
-
{ name: 'maxPriorityFeePerGas', type: 'uint256' },
|
|
74
|
-
{ name: 'paymasterAndData', type: 'bytes' },
|
|
75
|
-
{ name: 'signature', type: 'bytes' },
|
|
76
|
-
],
|
|
74
|
+
"inputs": [
|
|
75
|
+
{
|
|
76
|
+
"internalType": "address[]",
|
|
77
|
+
"name": "dest",
|
|
78
|
+
"type": "address[]"
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
"internalType": "uint256[]",
|
|
82
|
+
"name": "value",
|
|
83
|
+
"type": "uint256[]"
|
|
77
84
|
},
|
|
78
|
-
{
|
|
79
|
-
|
|
85
|
+
{
|
|
86
|
+
"internalType": "bytes[]",
|
|
87
|
+
"name": "func",
|
|
88
|
+
"type": "bytes[]"
|
|
89
|
+
}
|
|
80
90
|
],
|
|
81
|
-
|
|
82
|
-
|
|
91
|
+
"name": "executeBatch",
|
|
92
|
+
"outputs": [],
|
|
93
|
+
"stateMutability": "nonpayable",
|
|
94
|
+
"type": "function"
|
|
83
95
|
},
|
|
84
96
|
{
|
|
85
|
-
|
|
86
|
-
name:
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
97
|
+
"inputs": [],
|
|
98
|
+
"name": "getNonce",
|
|
99
|
+
"outputs": [
|
|
100
|
+
{
|
|
101
|
+
"internalType": "uint256",
|
|
102
|
+
"name": "",
|
|
103
|
+
"type": "uint256"
|
|
104
|
+
}
|
|
105
|
+
],
|
|
106
|
+
"stateMutability": "view",
|
|
107
|
+
"type": "function"
|
|
90
108
|
},
|
|
91
109
|
{
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
110
|
+
"inputs": [
|
|
111
|
+
{
|
|
112
|
+
"internalType": "address",
|
|
113
|
+
"name": "anOwner",
|
|
114
|
+
"type": "address"
|
|
115
|
+
}
|
|
116
|
+
],
|
|
117
|
+
"name": "initialize",
|
|
118
|
+
"outputs": [],
|
|
119
|
+
"stateMutability": "nonpayable",
|
|
120
|
+
"type": "function"
|
|
97
121
|
},
|
|
98
122
|
{
|
|
99
|
-
|
|
100
|
-
name:
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
123
|
+
"inputs": [],
|
|
124
|
+
"name": "owner",
|
|
125
|
+
"outputs": [
|
|
126
|
+
{
|
|
127
|
+
"internalType": "address",
|
|
128
|
+
"name": "",
|
|
129
|
+
"type": "address"
|
|
130
|
+
}
|
|
131
|
+
],
|
|
132
|
+
"stateMutability": "view",
|
|
133
|
+
"type": "function"
|
|
104
134
|
},
|
|
105
135
|
{
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
136
|
+
"inputs": [
|
|
137
|
+
{
|
|
138
|
+
"components": [
|
|
139
|
+
{
|
|
140
|
+
"internalType": "address",
|
|
141
|
+
"name": "sender",
|
|
142
|
+
"type": "address"
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
"internalType": "uint256",
|
|
146
|
+
"name": "nonce",
|
|
147
|
+
"type": "uint256"
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
"internalType": "bytes",
|
|
151
|
+
"name": "initCode",
|
|
152
|
+
"type": "bytes"
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
"internalType": "bytes",
|
|
156
|
+
"name": "callData",
|
|
157
|
+
"type": "bytes"
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
"internalType": "bytes32",
|
|
161
|
+
"name": "accountGasLimits",
|
|
162
|
+
"type": "bytes32"
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
"internalType": "uint256",
|
|
166
|
+
"name": "preVerificationGas",
|
|
167
|
+
"type": "uint256"
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
"internalType": "bytes32",
|
|
171
|
+
"name": "gasFees",
|
|
172
|
+
"type": "bytes32"
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
"internalType": "bytes",
|
|
176
|
+
"name": "paymasterAndData",
|
|
177
|
+
"type": "bytes"
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
"internalType": "bytes",
|
|
181
|
+
"name": "signature",
|
|
182
|
+
"type": "bytes"
|
|
183
|
+
}
|
|
184
|
+
],
|
|
185
|
+
"internalType": "struct PackedUserOperation",
|
|
186
|
+
"name": "userOp",
|
|
187
|
+
"type": "tuple"
|
|
188
|
+
},
|
|
189
|
+
{
|
|
190
|
+
"internalType": "bytes32",
|
|
191
|
+
"name": "userOpHash",
|
|
192
|
+
"type": "bytes32"
|
|
193
|
+
},
|
|
194
|
+
{
|
|
195
|
+
"internalType": "uint256",
|
|
196
|
+
"name": "missingAccountFunds",
|
|
197
|
+
"type": "uint256"
|
|
198
|
+
}
|
|
199
|
+
],
|
|
200
|
+
"name": "validateUserOp",
|
|
201
|
+
"outputs": [
|
|
202
|
+
{
|
|
203
|
+
"internalType": "uint256",
|
|
204
|
+
"name": "validationData",
|
|
205
|
+
"type": "uint256"
|
|
206
|
+
}
|
|
207
|
+
],
|
|
208
|
+
"stateMutability": "nonpayable",
|
|
209
|
+
"type": "function"
|
|
210
|
+
}
|
|
112
211
|
];
|
|
113
212
|
/**
|
|
114
|
-
* SimpleAccountFactory ABI
|
|
213
|
+
* SimpleAccountFactory ABI - v0.7 compatible
|
|
115
214
|
*/
|
|
116
215
|
exports.SIMPLE_ACCOUNT_FACTORY_ABI = [
|
|
117
216
|
{
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
217
|
+
"inputs": [
|
|
218
|
+
{
|
|
219
|
+
"internalType": "address",
|
|
220
|
+
"name": "owner",
|
|
221
|
+
"type": "address"
|
|
222
|
+
},
|
|
223
|
+
{
|
|
224
|
+
"internalType": "uint256",
|
|
225
|
+
"name": "salt",
|
|
226
|
+
"type": "uint256"
|
|
227
|
+
}
|
|
228
|
+
],
|
|
229
|
+
"name": "createAccount",
|
|
230
|
+
"outputs": [
|
|
231
|
+
{
|
|
232
|
+
"internalType": "contract SimpleAccount",
|
|
233
|
+
"name": "ret",
|
|
234
|
+
"type": "address"
|
|
235
|
+
}
|
|
123
236
|
],
|
|
124
|
-
|
|
125
|
-
|
|
237
|
+
"stateMutability": "nonpayable",
|
|
238
|
+
"type": "function"
|
|
126
239
|
},
|
|
127
240
|
{
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
241
|
+
"inputs": [
|
|
242
|
+
{
|
|
243
|
+
"internalType": "address",
|
|
244
|
+
"name": "owner",
|
|
245
|
+
"type": "address"
|
|
246
|
+
},
|
|
247
|
+
{
|
|
248
|
+
"internalType": "uint256",
|
|
249
|
+
"name": "salt",
|
|
250
|
+
"type": "uint256"
|
|
251
|
+
}
|
|
133
252
|
],
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
253
|
+
"name": "getAddress",
|
|
254
|
+
"outputs": [
|
|
255
|
+
{
|
|
256
|
+
"internalType": "address",
|
|
257
|
+
"name": "",
|
|
258
|
+
"type": "address"
|
|
259
|
+
}
|
|
260
|
+
],
|
|
261
|
+
"stateMutability": "view",
|
|
262
|
+
"type": "function"
|
|
263
|
+
}
|
|
137
264
|
];
|
|
138
265
|
//# sourceMappingURL=SimpleAccount.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SimpleAccount.js","sourceRoot":"","sources":["../../src/SmartContractWallet/SimpleAccount.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"SimpleAccount.js","sourceRoot":"","sources":["../../src/SmartContractWallet/SimpleAccount.ts"],"names":[],"mappings":";;;AAuBA,0DAcC;AArCD,+BAAsG;AAEtG;;;;GAIG;AACU,QAAA,uBAAuB,GACnC,g8bAAy8b,CAAC;AAE38b;;GAEG;AACU,QAAA,+BAA+B,GAC3C,s8pBAA+8pB,CAAC;AAEj9pB;;;;;;GAMG;AACH,SAAgB,uBAAuB,CAAC,KAAc,EAAE,IAAY,EAAE,cAAuB;IAC5F,8BAA8B;IAC9B,MAAM,eAAe,GAAG,IAAA,0BAAmB,EAAC,IAAA,yBAAkB,EAAC,eAAe,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAE1F,gCAAgC;IAChC,MAAM,YAAY,GAAG,IAAA,gBAAS,EAAC,+BAAuB,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,IAAA,gBAAS,EAAC,IAAA,0BAAmB,EAAC,IAAA,yBAAkB,EAAC,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAEvG,MAAM,cAAc,GAAG,IAAA,gBAAS,EAC/B,IAAA,mBAAY,EAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAC3G,CAAC;IAEF,wCAAwC;IACxC,OAAO,KAAK,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAa,CAAC;AACpD,CAAC;AAED;;GAEG;AACU,QAAA,kBAAkB,GAAG;IAChC;QACE,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE;YACT;gBACE,cAAc,EAAE,sBAAsB;gBACtC,MAAM,EAAE,EAAE;gBACV,MAAM,EAAE,SAAS;aAClB;SACF;QACD,iBAAiB,EAAE,MAAM;QACzB,MAAM,EAAE,UAAU;KACnB;IACD;QACE,QAAQ,EAAE;YACR;gBACE,cAAc,EAAE,SAAS;gBACzB,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE,SAAS;aAClB;YACD;gBACE,cAAc,EAAE,SAAS;gBACzB,MAAM,EAAE,OAAO;gBACf,MAAM,EAAE,SAAS;aAClB;YACD;gBACE,cAAc,EAAE,OAAO;gBACvB,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE,OAAO;aAChB;SACF;QACD,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,EAAE;QACb,iBAAiB,EAAE,YAAY;QAC/B,MAAM,EAAE,UAAU;KACnB;IACD;QACE,QAAQ,EAAE;YACR;gBACE,cAAc,EAAE,WAAW;gBAC3B,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE,WAAW;aACpB;YACD;gBACE,cAAc,EAAE,WAAW;gBAC3B,MAAM,EAAE,OAAO;gBACf,MAAM,EAAE,WAAW;aACpB;YACD;gBACE,cAAc,EAAE,SAAS;gBACzB,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE,SAAS;aAClB;SACF;QACD,MAAM,EAAE,cAAc;QACtB,SAAS,EAAE,EAAE;QACb,iBAAiB,EAAE,YAAY;QAC/B,MAAM,EAAE,UAAU;KACnB;IACD;QACE,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,UAAU;QAClB,SAAS,EAAE;YACT;gBACE,cAAc,EAAE,SAAS;gBACzB,MAAM,EAAE,EAAE;gBACV,MAAM,EAAE,SAAS;aAClB;SACF;QACD,iBAAiB,EAAE,MAAM;QACzB,MAAM,EAAE,UAAU;KACnB;IACD;QACE,QAAQ,EAAE;YACR;gBACE,cAAc,EAAE,SAAS;gBACzB,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,SAAS;aAClB;SACF;QACD,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE,EAAE;QACb,iBAAiB,EAAE,YAAY;QAC/B,MAAM,EAAE,UAAU;KACnB;IACD;QACE,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,OAAO;QACf,SAAS,EAAE;YACT;gBACE,cAAc,EAAE,SAAS;gBACzB,MAAM,EAAE,EAAE;gBACV,MAAM,EAAE,SAAS;aAClB;SACF;QACD,iBAAiB,EAAE,MAAM;QACzB,MAAM,EAAE,UAAU;KACnB;IACD;QACE,QAAQ,EAAE;YACR;gBACE,YAAY,EAAE;oBACZ;wBACE,cAAc,EAAE,SAAS;wBACzB,MAAM,EAAE,QAAQ;wBAChB,MAAM,EAAE,SAAS;qBAClB;oBACD;wBACE,cAAc,EAAE,SAAS;wBACzB,MAAM,EAAE,OAAO;wBACf,MAAM,EAAE,SAAS;qBAClB;oBACD;wBACE,cAAc,EAAE,OAAO;wBACvB,MAAM,EAAE,UAAU;wBAClB,MAAM,EAAE,OAAO;qBAChB;oBACD;wBACE,cAAc,EAAE,OAAO;wBACvB,MAAM,EAAE,UAAU;wBAClB,MAAM,EAAE,OAAO;qBAChB;oBACD;wBACE,cAAc,EAAE,SAAS;wBACzB,MAAM,EAAE,kBAAkB;wBAC1B,MAAM,EAAE,SAAS;qBAClB;oBACD;wBACE,cAAc,EAAE,SAAS;wBACzB,MAAM,EAAE,oBAAoB;wBAC5B,MAAM,EAAE,SAAS;qBAClB;oBACD;wBACE,cAAc,EAAE,SAAS;wBACzB,MAAM,EAAE,SAAS;wBACjB,MAAM,EAAE,SAAS;qBAClB;oBACD;wBACE,cAAc,EAAE,OAAO;wBACvB,MAAM,EAAE,kBAAkB;wBAC1B,MAAM,EAAE,OAAO;qBAChB;oBACD;wBACE,cAAc,EAAE,OAAO;wBACvB,MAAM,EAAE,WAAW;wBACnB,MAAM,EAAE,OAAO;qBAChB;iBACF;gBACD,cAAc,EAAE,4BAA4B;gBAC5C,MAAM,EAAE,QAAQ;gBAChB,MAAM,EAAE,OAAO;aAChB;YACD;gBACE,cAAc,EAAE,SAAS;gBACzB,MAAM,EAAE,YAAY;gBACpB,MAAM,EAAE,SAAS;aAClB;YACD;gBACE,cAAc,EAAE,SAAS;gBACzB,MAAM,EAAE,qBAAqB;gBAC7B,MAAM,EAAE,SAAS;aAClB;SACF;QACD,MAAM,EAAE,gBAAgB;QACxB,SAAS,EAAE;YACT;gBACE,cAAc,EAAE,SAAS;gBACzB,MAAM,EAAE,gBAAgB;gBACxB,MAAM,EAAE,SAAS;aAClB;SACF;QACD,iBAAiB,EAAE,YAAY;QAC/B,MAAM,EAAE,UAAU;KACnB;CACO,CAAC;AAEX;;GAEG;AACU,QAAA,0BAA0B,GAAG;IACxC;QACE,QAAQ,EAAE;YACR;gBACE,cAAc,EAAE,SAAS;gBACzB,MAAM,EAAE,OAAO;gBACf,MAAM,EAAE,SAAS;aAClB;YACD;gBACE,cAAc,EAAE,SAAS;gBACzB,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE,SAAS;aAClB;SACF;QACD,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE;YACT;gBACE,cAAc,EAAE,wBAAwB;gBACxC,MAAM,EAAE,KAAK;gBACb,MAAM,EAAE,SAAS;aAClB;SACF;QACD,iBAAiB,EAAE,YAAY;QAC/B,MAAM,EAAE,UAAU;KACnB;IACD;QACE,QAAQ,EAAE;YACR;gBACE,cAAc,EAAE,SAAS;gBACzB,MAAM,EAAE,OAAO;gBACf,MAAM,EAAE,SAAS;aAClB;YACD;gBACE,cAAc,EAAE,SAAS;gBACzB,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE,SAAS;aAClB;SACF;QACD,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE;YACT;gBACE,cAAc,EAAE,SAAS;gBACzB,MAAM,EAAE,EAAE;gBACV,MAAM,EAAE,SAAS;aAClB;SACF;QACD,iBAAiB,EAAE,MAAM;QACzB,MAAM,EAAE,UAAU;KACnB;CACO,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@paulstinchcombe/gasless-nft-tx",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.35",
|
|
4
4
|
"description": "Library for gasless NFT transactions using EIP-7702 delegation and ERC-4337 gas sponsorship",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -23,16 +23,17 @@
|
|
|
23
23
|
"author": "Paul Stinchcombe | KAMI",
|
|
24
24
|
"license": "MIT",
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"
|
|
26
|
+
"@account-abstraction/contracts": "0.7.0",
|
|
27
27
|
"permissionless": "^0.2.57",
|
|
28
|
-
"tslib": "^2.6.0"
|
|
28
|
+
"tslib": "^2.6.0",
|
|
29
|
+
"viem": "^2.21.0"
|
|
29
30
|
},
|
|
30
31
|
"devDependencies": {
|
|
31
32
|
"@types/node": "^20.0.0",
|
|
32
|
-
"typescript": "^5.0.0",
|
|
33
|
-
"vitest": "^1.0.0",
|
|
34
33
|
"@vitest/coverage-v8": "^1.0.0",
|
|
35
|
-
"anvil": "^0.0.6"
|
|
34
|
+
"anvil": "^0.0.6",
|
|
35
|
+
"typescript": "^5.0.0",
|
|
36
|
+
"vitest": "^1.0.0"
|
|
36
37
|
},
|
|
37
38
|
"files": [
|
|
38
39
|
"dist/**/*",
|