0 txs
0 calls
constructor
constructor(address lensHub_, address lensHandle_, address registry_, address safeProxyFactory_, address safeSingleton_, address creator_, address admin_, address treasury_, address paymentToken_, uint256 profileMintingFee_, uint256 handleMintingFee_, uint256 atomicMintingFee_)
functions
atomicMintingFee
viewfunction atomicMintingFee() view returns (uint256)
creator
viewfunction creator() view returns (address)
handleMintingFee
viewfunction handleMintingFee() view returns (uint256)
lensHandle
viewfunction lensHandle() view returns (address)
lensHub
viewfunction lensHub() view returns (address)
owner
viewfunction owner() view returns (address)
paymentToken
viewfunction paymentToken() view returns (address)
profileMintingFee
viewfunction profileMintingFee() view returns (uint256)
registry
viewfunction registry() view returns (address)
safeProxyFactory
viewfunction safeProxyFactory() view returns (address)
safeSingleton
viewfunction safeSingleton() view returns (address)
treasury
viewfunction treasury() view returns (address)
enableSafeAction
nonpayablefunction enableSafeAction(tuple params)
initializeSafeProfile
nonpayablefunction initializeSafeProfile(address[] owners, tuple createProfileParams, address[] managers) returns (address safe, uint256 profileId)
mintHandle
nonpayablefunction mintHandle(string handleName, address user) returns (uint256)
mintProfile
nonpayablefunction mintProfile(tuple createProfileParams, address[] users) returns (uint256)
mintProfileWithHandle
nonpayablefunction mintProfileWithHandle(tuple createProfileParams, string handleName, address[] users) returns (uint256, uint256)
removeSigner
nonpayablefunction removeSigner(address safe, uint256 profileId, address originalOwner, address removedOwner, bytes removeOwnerSig, bytes delegatorSig)
renounceOwnership
nonpayablefunction renounceOwnership()
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
updateAtomicFee
nonpayablefunction updateAtomicFee(uint256 _newAtomicFee)
updateFeeToken
nonpayablefunction updateFeeToken(address _newPaymentToken)
updateHandleMintingFee
nonpayablefunction updateHandleMintingFee(uint256 _newHandleMintingFee)
updateProfileMintingFee
nonpayablefunction updateProfileMintingFee(uint256 _newProfileMintingFee)
events
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
errors
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
SafeCreationFailed
error SafeCreationFailed()
creation bytecode
0x61016060405234801562000011575f80fd5b50604051620026d3380380620026d3833981016040819052620000349162000148565b856001600160a01b0381166200006357604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b6200006e81620000cf565b506001600160a01b039b8c16608052998b1660a052978a1660c05295891660e052938816610100529187166101205250851661014052600180546001600160a01b03191691909516179093556002929092556003919091556004556200022c565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038116811462000133575f80fd5b50565b805162000143816200011e565b919050565b5f805f805f805f805f805f806101808d8f03121562000165575f80fd5b8c5162000172816200011e565b60208e0151909c5062000185816200011e565b60408e0151909b5062000198816200011e565b60608e0151909a50620001ab816200011e565b60808e0151909950620001be816200011e565b60a08e0151909850620001d1816200011e565b9650620001e160c08e0162000136565b9550620001f160e08e0162000136565b9450620002026101008e0162000136565b93506101208d015192506101408d015191506101608d015190509295989b509295989b509295989b565b60805160a05160c05160e0516101005161012051610140516123fa620002d95f395f818161028201528181610d4c015281816112fa01526115db01525f8181610198015281816107c801528181610e0501528181611169015281816113b3015261149f01525f81816103770152610f8101525f81816102000152610f5801525f81816102c4015261093201525f61031101525f818161039e015281816105e80152610c4701526123fa5ff3fe608060405234801561000f575f80fd5b506004361061018f575f3560e01c80639a2e0c73116100dd578063ca8aaae611610088578063f301320811610063578063f30132081461040c578063fa1430f014610434578063fda4dfae14610447575f80fd5b8063ca8aaae6146103d3578063d9d6798b146103e6578063f2fde38b146103f9575f80fd5b8063ac7d146b116100b8578063ac7d146b14610372578063b02cfdc314610399578063c89245d5146103c0575f80fd5b80639a2e0c7314610303578063a38a92431461030c578063a65da60514610333575f80fd5b80633d3044751161013d578063715018a611610118578063715018a6146102b75780637b103999146102bf5780638da5cb5b146102e6575f80fd5b80633d3044751461026a57806361d027b31461027d5780636443785a146102a4575f80fd5b80631acc62b71161016d5780631acc62b7146102225780631d081a03146102375780633013ce291461024a575f80fd5b806302d05d3f1461019357806314f524aa146101e457806319964501146101fb575b5f80fd5b6101ba7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b6101ed60035481565b6040519081526020016101db565b6101ba7f000000000000000000000000000000000000000000000000000000000000000081565b610235610230366004611869565b610450565b005b610235610245366004611966565b6109b2565b6001546101ba9073ffffffffffffffffffffffffffffffffffffffff1681565b6102356102783660046119c2565b6109cc565b6101ba7f000000000000000000000000000000000000000000000000000000000000000081565b6101ed6102b2366004611a6c565b610ce4565b610235610e86565b6101ba7f000000000000000000000000000000000000000000000000000000000000000081565b5f5473ffffffffffffffffffffffffffffffffffffffff166101ba565b6101ed60025481565b6101ba7f000000000000000000000000000000000000000000000000000000000000000081565b610346610341366004611bd3565b610e99565b6040805173ffffffffffffffffffffffffffffffffffffffff90931683526020830191909152016101db565b6101ba7f000000000000000000000000000000000000000000000000000000000000000081565b6101ba7f000000000000000000000000000000000000000000000000000000000000000081565b6102356103ce366004611c86565b611202565b6102356103e1366004611966565b611278565b6101ed6103f4366004611ca1565b611292565b610235610407366004611c86565b611431565b61041f61041a366004611d01565b611499565b604080519283526020830191909152016101db565b610235610442366004611966565b611665565b6101ed60045481565b61045861167f565b6040805160018082528183019092525f91602080830190803683370190505090508160400151815f8151811061049057610490611d70565b73ffffffffffffffffffffffffffffffffffffffff92909216602092830291909101909101526040805160018082528183019092525f918160200160208202803683370190505090506001815f815181106104ed576104ed611d70565b9115156020928302919091018201528301516040515f917fc1f4b40a0000000000000000000000000000000000000000000000000000000091610537919086908690602401611ded565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff00000000000000000000000000000000000000000000000000000000909416939093179092528551606087015192517f6a76120200000000000000000000000000000000000000000000000000000000815291935073ffffffffffffffffffffffffffffffffffffffff1691636a76120291610620917f0000000000000000000000000000000000000000000000000000000000000000915f918791839182918291829182918291600401611ec6565b6020604051808303815f875af115801561063c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106609190611f53565b5050604083810151815173ffffffffffffffffffffffffffffffffffffffff9182166024820152600160448083019190915283518083039091018152606490910183526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f0d582f13000000000000000000000000000000000000000000000000000000001790528551608087015193517f6a761202000000000000000000000000000000000000000000000000000000008152919392811692636a7612029261074192915f91879183918291829182918291829190600401611ec6565b6020604051808303815f875af115801561075d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107819190611f53565b50835160a08501516040517f5bc8b9fd0000000000000000000000000000000000000000000000000000000081525f9273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001692635bc8b9fd926107fd929190600401611f72565b6020604051808303815f875af1158015610819573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061083d9190611fa0565b60208601516040519192507f86cf48e70000000000000000000000000000000000000000000000000000000091610881918491602401918252602082015260400190565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090941693909317909252865160c088015192517f6a76120200000000000000000000000000000000000000000000000000000000815291945073ffffffffffffffffffffffffffffffffffffffff1691636a7612029161096a917f0000000000000000000000000000000000000000000000000000000000000000915f918891839182918291829182918291600401611ec6565b6020604051808303815f875af1158015610986573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109aa9190611f53565b505050505050565b6109ba61167f565b60045481036109c7575f80fd5b600455565b6109d461167f565b60405173ffffffffffffffffffffffffffffffffffffffff808816602483015286166044820152600160648201525f907ff8dc5dd90000000000000000000000000000000000000000000000000000000090608401604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505090508873ffffffffffffffffffffffffffffffffffffffff16636a7612028a5f845f805f805f808f8f6040518c63ffffffff1660e01b8152600401610ad59b9a99989796959493929190611fe0565b6020604051808303815f875af1158015610af1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b159190611f53565b506040805160018082528183019092525f916020808301908036833701905050905086815f81518110610b4a57610b4a611d70565b73ffffffffffffffffffffffffffffffffffffffff92909216602092830291909101909101526040805160018082528183019092525f9181602001602082028036833750506040519192507fc1f4b40a0000000000000000000000000000000000000000000000000000000091610bca91508c9085908590602401611ded565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505092508a73ffffffffffffffffffffffffffffffffffffffff16636a7612027f00000000000000000000000000000000000000000000000000000000000000005f865f805f805f808f8f6040518c63ffffffff1660e01b8152600401610c969b9a99989796959493929190611fe0565b6020604051808303815f875af1158015610cb2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cd69190611f53565b505050505050505050505050565b5f805473ffffffffffffffffffffffffffffffffffffffff163314610dc8576001546003546040517f23b872dd00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000008116602483015260448201929092529116906323b872dd906064016020604051808303815f875af1158015610da2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dc69190611f53565b505b6040517f5bc8b9fd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635bc8b9fd90610e3e9085908890889060040161206f565b6020604051808303815f875af1158015610e5a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e7e9190611fa0565b949350505050565b610e8e61167f565b610e975f6116d1565b565b5f80610ea361167f565b604080515f80825260208201909252610ecc9088908890600190859081808080604485016120a7565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb63e800d0000000000000000000000000000000000000000000000000000000017905290505b600554604080513060208201529081019190915242606082015273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631688f0b9907f000000000000000000000000000000000000000000000000000000000000000090849060800160408051601f198184030181529082905280516020909101207fffffffff0000000000000000000000000000000000000000000000000000000060e086901b168252610ff69392916004016121ac565b6020604051808303815f875af1925050508015611030575060408051601f3d908101601f1916820190925261102d918101906121ea565b60015b6111085761103c612205565b806308c379a0036110d4575061105061221e565b8061105b57506110d6565b805160208201207fd7c71a0bdd2eb2834ad042153c811dd478e4ee2324e3003b9522e03e7b3735dc146110ba576040517f2cc281a100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60058054905f6110c9836122c5565b91905055505061110b565b505b6040517f2cc281a100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b92505b73ffffffffffffffffffffffffffffffffffffffff831615610f275773ffffffffffffffffffffffffffffffffffffffff80841686526040517fca460ab20000000000000000000000000000000000000000000000000000000081527f00000000000000000000000000000000000000000000000000000000000000009091169063ca460ab2906111a29088908890600401612363565b6020604051808303815f875af11580156111be573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111e29190611fa0565b600580549193505f6111f3836122c5565b91905055505094509492505050565b61120a61167f565b60015473ffffffffffffffffffffffffffffffffffffffff90811690821603611231575f80fd5b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b61128061167f565b600254810361128d575f80fd5b600255565b5f805473ffffffffffffffffffffffffffffffffffffffff163314611376576001546002546040517f23b872dd00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000008116602483015260448201929092529116906323b872dd906064016020604051808303815f875af1158015611350573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113749190611f53565b505b6040517fca460ab200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063ca460ab2906113ea9086908690600401612363565b6020604051808303815f875af1158015611406573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061142a9190611fa0565b9392505050565b61143961167f565b73ffffffffffffffffffffffffffffffffffffffff811661148d576040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081525f60048201526024015b60405180910390fd5b611496816116d1565b50565b5f805f807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16639033c66a898989896040518563ffffffff1660e01b81526004016114fc9493929190612387565b60408051808303815f875af1158015611517573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061153b91906123cb565b9150915061155d5f5473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461165857600154600480546040517f23b872dd000000000000000000000000000000000000000000000000000000008152339281019290925273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000811660248401526044830191909152909116906323b872dd906064016020604051808303815f875af1158015611632573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116569190611f53565b505b9097909650945050505050565b61166d61167f565b600354810361167a575f80fd5b600355565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610e97576040517f118cdaa7000000000000000000000000000000000000000000000000000000008152336004820152602401611484565b5f805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b601f19601f830116810181811067ffffffffffffffff8211171561179857611798611745565b6040525050565b60405160e0810167ffffffffffffffff811182821017156117c2576117c2611745565b60405290565b73ffffffffffffffffffffffffffffffffffffffff81168114611496575f80fd5b80356117f4816117c8565b919050565b5f82601f830112611808575f80fd5b813567ffffffffffffffff81111561182257611822611745565b6040516118396020601f19601f8501160182611772565b81815284602083860101111561184d575f80fd5b816020850160208301375f918101602001919091529392505050565b5f60208284031215611879575f80fd5b813567ffffffffffffffff80821115611890575f80fd5b9083019060e082860312156118a3575f80fd5b6118ab61179f565b6118b4836117e9565b8152602083013560208201526118cc604084016117e9565b60408201526060830135828111156118e2575f80fd5b6118ee878286016117f9565b606083015250608083013582811115611905575f80fd5b611911878286016117f9565b60808301525060a083013582811115611928575f80fd5b611934878286016117f9565b60a08301525060c08301358281111561194b575f80fd5b611957878286016117f9565b60c08301525095945050505050565b5f60208284031215611976575f80fd5b5035919050565b5f8083601f84011261198d575f80fd5b50813567ffffffffffffffff8111156119a4575f80fd5b6020830191508360208285010111156119bb575f80fd5b9250929050565b5f805f805f805f8060c0898b0312156119d9575f80fd5b88356119e4816117c8565b97506020890135965060408901356119fb816117c8565b95506060890135611a0b816117c8565b9450608089013567ffffffffffffffff80821115611a27575f80fd5b611a338c838d0161197d565b909650945060a08b0135915080821115611a4b575f80fd5b50611a588b828c0161197d565b999c989b5096995094979396929594505050565b5f805f60408486031215611a7e575f80fd5b833567ffffffffffffffff811115611a94575f80fd5b611aa08682870161197d565b9094509250506020840135611ab4816117c8565b809150509250925092565b5f60608284031215611acf575f80fd5b6040516060810167ffffffffffffffff8282108183111715611af357611af3611745565b8160405282935084359150611b07826117c8565b908252602084013590611b19826117c8565b8160208401526040850135915080821115611b32575f80fd5b50611b3f858286016117f9565b6040830152505092915050565b5f82601f830112611b5b575f80fd5b8135602067ffffffffffffffff821115611b7757611b77611745565b8160051b604051611b8a83830182611772565b92835284810182019282810187851115611ba2575f80fd5b83870192505b84831015611bc8578235611bbb816117c8565b8152918301918301611ba8565b509695505050505050565b5f805f8060608587031215611be6575f80fd5b843567ffffffffffffffff80821115611bfd575f80fd5b818701915087601f830112611c10575f80fd5b813581811115611c1e575f80fd5b8860208260051b8501011115611c32575f80fd5b602092830196509450908601359080821115611c4c575f80fd5b611c5888838901611abf565b93506040870135915080821115611c6d575f80fd5b50611c7a87828801611b4c565b91505092959194509250565b5f60208284031215611c96575f80fd5b813561142a816117c8565b5f8060408385031215611cb2575f80fd5b823567ffffffffffffffff80821115611cc9575f80fd5b611cd586838701611abf565b93506020850135915080821115611cea575f80fd5b50611cf785828601611b4c565b9150509250929050565b5f805f8060608587031215611d14575f80fd5b843567ffffffffffffffff80821115611d2b575f80fd5b611d3788838901611abf565b95506020870135915080821115611d4c575f80fd5b611d588883890161197d565b90955093506040870135915080821115611c6d575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f815180845260208085019450602084015f5b83811015611de257815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611db0565b509495945050505050565b8381525f602060606020840152611e076060840186611d9d565b8381036040850152845180825260208087019201905f5b81811015611e3c578351151583529284019291840191600101611e1e565b509098975050505050505050565b5f81518084525f5b81811015611e6e57602081850181015186830182015201611e52565b505f602082860101526020601f19601f83011685010191505092915050565b60028110611ec2577f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b9052565b5f61014073ffffffffffffffffffffffffffffffffffffffff808e1684528c6020850152816040850152611efc8285018d611e4a565b9150611f0b606085018c611e8d565b8960808501528860a08501528760c085015280871660e085015280861661010085015250828103610120840152611f428185611e4a565b9d9c50505050505050505050505050565b5f60208284031215611f63575f80fd5b8151801515811461142a575f80fd5b73ffffffffffffffffffffffffffffffffffffffff83168152604060208201525f610e7e6040830184611e4a565b5f60208284031215611fb0575f80fd5b5051919050565b81835281816020850137505f602082840101525f6020601f19601f840116840101905092915050565b5f61014073ffffffffffffffffffffffffffffffffffffffff808f1684528d60208501528160408501526120168285018e611e4a565b9150612025606085018d611e8d565b8a60808501528960a08501528860c085015280881660e08501528087166101008501525082810361012084015261205d818587611fb7565b9e9d5050505050505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff84168152604060208201525f61209e604083018486611fb7565b95945050505050565b61010080825281018990525f61012082018b825b8c8110156120f95781356120ce816117c8565b73ffffffffffffffffffffffffffffffffffffffff16835260209283019291909101906001016120bb565b5050896020840152612123604084018a73ffffffffffffffffffffffffffffffffffffffff169052565b82810360608401526121358189611e4a565b91505061215a608083018773ffffffffffffffffffffffffffffffffffffffff169052565b73ffffffffffffffffffffffffffffffffffffffff851660a08301528360c083015261219e60e083018473ffffffffffffffffffffffffffffffffffffffff169052565b9a9950505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff84168152606060208201525f6121da6060830185611e4a565b9050826040830152949350505050565b5f602082840312156121fa575f80fd5b815161142a816117c8565b5f60033d111561221b5760045f803e505f5160e01c5b90565b5f60443d101561222b5790565b6040517ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc803d016004833e81513d67ffffffffffffffff816024840111818411171561227957505050505090565b82850191508151818111156122915750505050505090565b843d87010160208285010111156122ab5750505050505090565b6122ba60208286010187611772565b509095945050505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361231a577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5060010190565b5f73ffffffffffffffffffffffffffffffffffffffff80835116845280602084015116602085015250604082015160606040850152610e7e6060850182611e4a565b604081525f6123756040830185612321565b828103602084015261209e8185611d9d565b606081525f6123996060830187612321565b82810360208401526123ac818688611fb7565b905082810360408401526123c08185611d9d565b979650505050505050565b5f80604083850312156123dc575f80fd5b50508051602090910151909290915056fea164736f6c6343000817000a000000000000000000000000db46d1dc155634fbc732f92e853b10b288ad5a1d000000000000000000000000e7e7ead361f3aacd73a61a9bd6c10ca17f38e945000000000000000000000000d4f2f33680fccb36748fa98318516437816088440000000000000000000000004e1dcf7ad4e460cfd30791ccc4f9c8a4f820ec6700000000000000000000000041675c099f32341bf84bfc5382af534df5c7461a0000000000000000000000000b5e6100243f793e480de6088de6ba70aa9f38720000000000000000000000001abb4f7d77c6cad78291bd5736d3ddf8d8992c13000000000000000000000000ac0d2457017d8935339ed703f86eaddb6aade0060000000000000000000000002791bca1f2de4661ed88a30c99a7a9449aa84174000000000000000000000000000000000000000000000000000000000098968000000000000000000000000000000000000000000000000000000000009896800000000000000000000000000000000000000000000000000000000001312d00