2 txs
2.1k calls
constructor
constructor(address _storageAdministrator, address _rolesManager, address _initialOwner)
functions
getCoreRefLink
viewfunction getCoreRefLink(address _signer) view returns (string)
isAdminRefLink
viewfunction isAdminRefLink(string _refLink) view returns (bool)
isPaused
viewfunction isPaused() view returns (bool)
isReferralLinkFromAdmin
viewfunction isReferralLinkFromAdmin(string _link, address _coreRefLinkReferredToAddress) view returns (uint256)
NFT_MANAGER
viewfunction NFT_MANAGER() view returns (address)
owner
viewfunction owner() view returns (address)
paused
viewfunction paused() view returns (bool)
ROLES_MANAGER
viewfunction ROLES_MANAGER() view returns (address)
STORAGE_ADMINISTRATOR
viewfunction STORAGE_ADMINISTRATOR() view returns (address)
createNFTAccount
nonpayablefunction createNFTAccount(tuple _data, uint96 _sponsorNFTId, uint96 _tokenId, string _CID, address _signer, bool _isAdmin) returns (uint96, address)
emergencyPause
nonpayablefunction emergencyPause()
emergencyUnpause
nonpayablefunction emergencyUnpause()
generateCoreRefLink
nonpayablefunction generateCoreRefLink(address _signer)
renounceOwnership
nonpayablefunction renounceOwnership()
setContractsAddress
nonpayablefunction setContractsAddress(address _address, uint8 _contract)
transferNFT
nonpayablefunction transferNFT(address _signer, address _to, uint96 _tokenId)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
Paused
event Paused(address account)
Unpaused
event Unpaused(address account)
errors
AccessDenied
error AccessDenied()
EnforcedPause
error EnforcedPause()
ExpectedPause
error ExpectedPause()
N1
error N1()
N2
error N2()
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
R1
error R1()
ReentrancyGuardReentrantCall
error ReentrancyGuardReentrantCall()
V1
error V1()
creation bytecode
0x60806040523480156200001157600080fd5b506040516200328b3803806200328b833981810160405281019062000037919062000208565b80600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603620000ad5760006040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401620000a4919062000275565b60405180910390fd5b620000be81620000d860201b60201c565b506001600781905550826000558160025550505062000292565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620001d082620001a3565b9050919050565b620001e281620001c3565b8114620001ee57600080fd5b50565b6000815190506200020281620001d7565b92915050565b6000806000606084860312156200022457620002236200019e565b5b60006200023486828701620001f1565b93505060206200024786828701620001f1565b92505060406200025a86828701620001f1565b9150509250925092565b6200026f81620001c3565b82525050565b60006020820190506200028c600083018462000264565b92915050565b612fe980620002a26000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c8063715018a6116100a25780639990ca70116100715780639990ca701461026f578063b187bd261461028b578063b7ce1752146102a9578063cb66eee9146102c7578063f2fde38b146102f75761010b565b8063715018a61461020d57806376a6bf2c146102175780638690e43b146102335780638da5cb5b146102515761010b565b806351858e27116100de57806351858e271461018457806359457efd1461018e5780635c975abb146101be5780636cfb0af8146101dc5761010b565b80630a2dd68d146101105780630eea54d61461012e57806328daeed51461014a5780634a4e3bd51461017a575b600080fd5b610118610313565b6040516101259190611b81565b60405180910390f35b61014860048036038101906101439190611c32565b610337565b005b610164600480360381019061015f9190611dcb565b610347565b6040516101719190611e2f565b60405180910390f35b6101826103d4565b005b61018c61046f565b005b6101a860048036038101906101a39190611e4a565b61050a565b6040516101b59190611ef6565b60405180910390f35b6101c6610606565b6040516101d39190611e2f565b60405180910390f35b6101f660048036038101906101f19190611f68565b61061d565b60405161020492919061204b565b60405180910390f35b61021561063d565b005b610231600480360381019061022c9190612099565b610651565b005b61023b610809565b60405161024891906120d9565b60405180910390f35b61025961082f565b60405161026691906120d9565b60405180910390f35b61028960048036038101906102849190611e4a565b610859565b005b610293610865565b6040516102a09190611e2f565b60405180910390f35b6102b1610874565b6040516102be91906120d9565b60405180910390f35b6102e160048036038101906102dc91906120f4565b61089a565b6040516102ee9190612169565b60405180910390f35b610311600480360381019061030c9190611e4a565b6108ae565b005b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610342838383610934565b505050565b60008060038360405161035a91906121c0565b908152602001604051809103902060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036103c95760009150506103cf565b60019150505b919050565b6103dc610afa565b732ee70f0585d83f523ae876f86b8df2c6c8677a9973ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610455576040517f3ee569bf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61045d610b61565b610465610ba7565b61046d610c0a565b565b610477610afa565b732ee70f0585d83f523ae876f86b8df2c6c8677a9973ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146104f0576040517f3ee569bf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6104f8610b61565b610500610c14565b610508610c0a565b565b6060610537600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610c77565b600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805461058190612206565b80601f01602080910402602001604051908101604052809291908181526020018280546105ad90612206565b80156105fa5780601f106105cf576101008083540402835291602001916105fa565b820191906000526020600020905b8154815290600101906020018083116105dd57829003601f168201915b50505050509050919050565b6000600860009054906101000a900460ff16905090565b60008061062e888888888888610cdf565b91509150965096945050505050565b610645610d4c565b61064f6000610dd3565b565b6106b3600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16336040518060400160405280600a81526020017f535550455241444d494e00000000000000000000000000000000000000000000815250610e99565b600060028111156106c7576106c6612237565b5b8160028111156106da576106d9612237565b5b0361072457816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610805565b6001600281111561073857610737612237565b5b81600281111561074b5761074a612237565b5b036107965781600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610804565b6002808111156107a9576107a8612237565b5b8160028111156107bc576107bb612237565b5b036108035781600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b5b5050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61086281610edf565b50565b600061086f610606565b905090565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006108a68383610fed565b905092915050565b6108b6610d4c565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036109285760006040517f1e4fbdf700000000000000000000000000000000000000000000000000000000815260040161091f91906120d9565b60405180910390fd5b61093181610dd3565b50565b61095f600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610c77565b8273ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663243717e0836040518263ffffffff1660e01b81526004016109cf9190612266565b600060405180830381865afa1580156109ec573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610a159190612595565b6080015173ffffffffffffffffffffffffffffffffffffffff1614610a66576040517fc71326c800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eea54d68484846040518463ffffffff1660e01b8152600401610ac3939291906125de565b600060405180830381600087803b158015610add57600080fd5b505af1158015610af1573d6000803e3d6000fd5b50505050505050565b3373ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff1614610b5f576040517f4ca8886700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b600260075403610b9d576040517f3ee5aeb500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002600781905550565b610baf611135565b6000600860006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa610bf3611175565b604051610c0091906120d9565b60405180910390a1565b6001600781905550565b610c1c61117d565b6001600860006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610c60611175565b604051610c6d91906120d9565b60405180910390a1565b8073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610cdc576040517f4ca8886700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50565b600080610d0d600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610c77565b60008088905084610d2b57610d228a876111be565b80925081935050505b610d39868b8a85858c6114bc565b8082935093505050965096945050505050565b610d54611175565b73ffffffffffffffffffffffffffffffffffffffff16610d7261082f565b73ffffffffffffffffffffffffffffffffffffffff1614610dd157610d95611175565b6040517f118cdaa7000000000000000000000000000000000000000000000000000000008152600401610dc891906120d9565b60405180910390fd5b565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b610ea48383836117b4565b610eda576040517f4ca8886700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050565b610f0a600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610c77565b6000610f3d8242604051602001610f2292919061267e565b60405160208183030381529060405280519060200120611908565b905080600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209081610f8b919061284c565b5081600382604051610f9d91906121c0565b908152602001604051809103902060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b60008073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663d5463067856040518263ffffffff1660e01b815260040161105f9190611ef6565b602060405180830381865afa15801561107c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a0919061291e565b73ffffffffffffffffffffffffffffffffffffffff160361112a57600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611121576040517fb22dd2ca00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001905061112f565b600090505b92915050565b61113d610606565b611173576040517f8dfc202b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b600033905090565b611185610606565b156111bc576040517fd93c066500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634fffd0b9856040518263ffffffff1660e01b815260040161121d91906120d9565b600060405180830381865afa15801561123a573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190611263919061294b565b51905060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663d54630678680606001906112b291906129a3565b6040518363ffffffff1660e01b81526004016112cf929190612a33565b602060405180830381865afa1580156112ec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611310919061291e565b9250600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561134e5750600081145b1561140857600073ffffffffffffffffffffffffffffffffffffffff16600386806060019061137d91906129a3565b60405161138b929190612a7c565b908152602001604051809103902060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603611407576040517fb22dd2ca00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16632e57096e86806060019061145491906129a3565b6040518363ffffffff1660e01b8152600401611471929190612a33565b602060405180830381865afa15801561148e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114b29190612a95565b9150509250929050565b60056000856bffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611522576040517fcb76ae1800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600042905060008067ffffffffffffffff81111561154357611542611ca0565b5b6040519080825280602002602001820160405280156115715781602001602082028036833780820191505090505b50905060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663624afeb06040518061016001604052808a80600001906115cc91906129a3565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505081526020018a60200160208101906116279190612ac2565b6bffffffffffffffffffffffff1681526020018a604001602081019061164d9190612b29565b61ffff166bffffffffffffffffffffffff168152602001896bffffffffffffffffffffffff1681526020018b73ffffffffffffffffffffffffffffffffffffffff1681526020016116c58c876040516020016116aa92919061267e565b60405160208183030381529060405280519060200120611908565b815260200184815260200184815260200160006bffffffffffffffffffffffff168152602001858152602001600081525087878b806060019061170891906129a3565b8d608001602081019061171b9190612b8f565b8a6040518863ffffffff1660e01b815260040161173e9796959493929190612df5565b600060405180830381600087803b15801561175857600080fd5b505af115801561176c573d6000803e3d6000fd5b50505050600160056000886bffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050505050505050565b6000808473ffffffffffffffffffffffffffffffffffffffff16637909185185856040518363ffffffff1660e01b81526004016117f2929190612e6d565b6020604051808303816000875af1158015611811573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118359190612eb2565b90508015801561187157508373ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff1614155b156118fc578473ffffffffffffffffffffffffffffffffffffffff16637909185132856040518363ffffffff1660e01b81526004016118b1929190612e6d565b6020604051808303816000875af11580156118d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118f49190612eb2565b915050611901565b809150505b9392505050565b606060006040518060400160405280601081526020017f303132333435363738396162636465660000000000000000000000000000000081525090506000604067ffffffffffffffff81111561196157611960611ca0565b5b6040519080825280601f01601f1916602001820160405280156119935781602001600182028036833780820191505090505b50905060005b6020811015611af7578260048683602081106119b8576119b7612edf565b5b1a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916901c60f81c60ff16815181106119f7576119f6612edf565b5b602001015160f81c60f81b82600283611a109190612f3d565b81518110611a2157611a20612edf565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535082600f60f81b868360208110611a6957611a68612edf565b5b1a60f81b1660f81c60ff1681518110611a8557611a84612edf565b5b602001015160f81c60f81b826001600284611aa09190612f3d565b611aaa9190612f7f565b81518110611abb57611aba612edf565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508080600101915050611999565b508092505050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b6000611b47611b42611b3d84611b02565b611b22565b611b02565b9050919050565b6000611b5982611b2c565b9050919050565b6000611b6b82611b4e565b9050919050565b611b7b81611b60565b82525050565b6000602082019050611b966000830184611b72565b92915050565b6000604051905090565b600080fd5b600080fd5b6000611bbb82611b02565b9050919050565b611bcb81611bb0565b8114611bd657600080fd5b50565b600081359050611be881611bc2565b92915050565b60006bffffffffffffffffffffffff82169050919050565b611c0f81611bee565b8114611c1a57600080fd5b50565b600081359050611c2c81611c06565b92915050565b600080600060608486031215611c4b57611c4a611ba6565b5b6000611c5986828701611bd9565b9350506020611c6a86828701611bd9565b9250506040611c7b86828701611c1d565b9150509250925092565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611cd882611c8f565b810181811067ffffffffffffffff82111715611cf757611cf6611ca0565b5b80604052505050565b6000611d0a611b9c565b9050611d168282611ccf565b919050565b600067ffffffffffffffff821115611d3657611d35611ca0565b5b611d3f82611c8f565b9050602081019050919050565b82818337600083830152505050565b6000611d6e611d6984611d1b565b611d00565b905082815260208101848484011115611d8a57611d89611c8a565b5b611d95848285611d4c565b509392505050565b600082601f830112611db257611db1611c85565b5b8135611dc2848260208601611d5b565b91505092915050565b600060208284031215611de157611de0611ba6565b5b600082013567ffffffffffffffff811115611dff57611dfe611bab565b5b611e0b84828501611d9d565b91505092915050565b60008115159050919050565b611e2981611e14565b82525050565b6000602082019050611e446000830184611e20565b92915050565b600060208284031215611e6057611e5f611ba6565b5b6000611e6e84828501611bd9565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611eb1578082015181840152602081019050611e96565b60008484015250505050565b6000611ec882611e77565b611ed28185611e82565b9350611ee2818560208601611e93565b611eeb81611c8f565b840191505092915050565b60006020820190508181036000830152611f108184611ebd565b905092915050565b600080fd5b600060a08284031215611f3357611f32611f18565b5b81905092915050565b611f4581611e14565b8114611f5057600080fd5b50565b600081359050611f6281611f3c565b92915050565b60008060008060008060c08789031215611f8557611f84611ba6565b5b600087013567ffffffffffffffff811115611fa357611fa2611bab565b5b611faf89828a01611f1d565b9650506020611fc089828a01611c1d565b9550506040611fd189828a01611c1d565b945050606087013567ffffffffffffffff811115611ff257611ff1611bab565b5b611ffe89828a01611d9d565b935050608061200f89828a01611bd9565b92505060a061202089828a01611f53565b9150509295509295509295565b61203681611bee565b82525050565b61204581611bb0565b82525050565b6000604082019050612060600083018561202d565b61206d602083018461203c565b9392505050565b6003811061208157600080fd5b50565b60008135905061209381612074565b92915050565b600080604083850312156120b0576120af611ba6565b5b60006120be85828601611bd9565b92505060206120cf85828601612084565b9150509250929050565b60006020820190506120ee600083018461203c565b92915050565b6000806040838503121561210b5761210a611ba6565b5b600083013567ffffffffffffffff81111561212957612128611bab565b5b61213585828601611d9d565b925050602061214685828601611bd9565b9150509250929050565b6000819050919050565b61216381612150565b82525050565b600060208201905061217e600083018461215a565b92915050565b600081905092915050565b600061219a82611e77565b6121a48185612184565b93506121b4818560208601611e93565b80840191505092915050565b60006121cc828461218f565b915081905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061221e57607f821691505b602082108103612231576122306121d7565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b600060208201905061227b600083018461202d565b92915050565b600080fd5b600080fd5b600061229e61229984611d1b565b611d00565b9050828152602081018484840111156122ba576122b9611c8a565b5b6122c5848285611e93565b509392505050565b600082601f8301126122e2576122e1611c85565b5b81516122f284826020860161228b565b91505092915050565b60008151905061230a81611c06565b92915050565b60008151905061231f81611bc2565b92915050565b600067ffffffffffffffff8211156123405761233f611ca0565b5b602082029050602081019050919050565b600080fd5b600061236961236484612325565b611d00565b9050808382526020820190506020840283018581111561238c5761238b612351565b5b835b818110156123b557806123a188826122fb565b84526020840193505060208101905061238e565b5050509392505050565b600082601f8301126123d4576123d3611c85565b5b81516123e4848260208601612356565b91505092915050565b6123f681612150565b811461240157600080fd5b50565b600081519050612413816123ed565b92915050565b600061016082840312156124305761242f612281565b5b61243b610160611d00565b9050600082015167ffffffffffffffff81111561245b5761245a612286565b5b612467848285016122cd565b600083015250602061247b848285016122fb565b602083015250604061248f848285016122fb565b60408301525060606124a3848285016122fb565b60608301525060806124b784828501612310565b60808301525060a082015167ffffffffffffffff8111156124db576124da612286565b5b6124e7848285016122cd565b60a08301525060c082015167ffffffffffffffff81111561250b5761250a612286565b5b612517848285016123bf565b60c08301525060e082015167ffffffffffffffff81111561253b5761253a612286565b5b612547848285016123bf565b60e08301525061010061255c848285016122fb565b6101008301525061012061257284828501612404565b6101208301525061014061258884828501612404565b6101408301525092915050565b6000602082840312156125ab576125aa611ba6565b5b600082015167ffffffffffffffff8111156125c9576125c8611bab565b5b6125d584828501612419565b91505092915050565b60006060820190506125f3600083018661203c565b612600602083018561203c565b61260d604083018461202d565b949350505050565b60008160601b9050919050565b600061262d82612615565b9050919050565b600061263f82612622565b9050919050565b61265761265282611bb0565b612634565b82525050565b6000819050919050565b61267861267382612150565b61265d565b82525050565b600061268a8285612646565b60148201915061269a8284612667565b6020820191508190509392505050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830261270c7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826126cf565b61271686836126cf565b95508019841693508086168417925050509392505050565b600061274961274461273f84612150565b611b22565b612150565b9050919050565b6000819050919050565b6127638361272e565b61277761276f82612750565b8484546126dc565b825550505050565b600090565b61278c61277f565b61279781848461275a565b505050565b5b818110156127bb576127b0600082612784565b60018101905061279d565b5050565b601f821115612800576127d1816126aa565b6127da846126bf565b810160208510156127e9578190505b6127fd6127f5856126bf565b83018261279c565b50505b505050565b600082821c905092915050565b600061282360001984600802612805565b1980831691505092915050565b600061283c8383612812565b9150826002028217905092915050565b61285582611e77565b67ffffffffffffffff81111561286e5761286d611ca0565b5b6128788254612206565b6128838282856127bf565b600060209050601f8311600181146128b657600084156128a4578287015190505b6128ae8582612830565b865550612916565b601f1984166128c4866126aa565b60005b828110156128ec578489015182556001820191506020850194506020810190506128c7565b868310156129095784890151612905601f891682612812565b8355505b6001600288020188555050505b505050505050565b60006020828403121561293457612933611ba6565b5b600061294284828501612310565b91505092915050565b60006020828403121561296157612960611ba6565b5b600082015167ffffffffffffffff81111561297f5761297e611bab565b5b61298b848285016123bf565b91505092915050565b600080fd5b600080fd5b600080fd5b600080833560016020038436030381126129c0576129bf612994565b5b80840192508235915067ffffffffffffffff8211156129e2576129e1612999565b5b6020830192506001820236038313156129fe576129fd61299e565b5b509250929050565b6000612a128385611e82565b9350612a1f838584611d4c565b612a2883611c8f565b840190509392505050565b60006020820190508181036000830152612a4e818486612a06565b90509392505050565b6000612a638385612184565b9350612a70838584611d4c565b82840190509392505050565b6000612a89828486612a57565b91508190509392505050565b600060208284031215612aab57612aaa611ba6565b5b6000612ab9848285016122fb565b91505092915050565b600060208284031215612ad857612ad7611ba6565b5b6000612ae684828501611c1d565b91505092915050565b600061ffff82169050919050565b612b0681612aef565b8114612b1157600080fd5b50565b600081359050612b2381612afd565b92915050565b600060208284031215612b3f57612b3e611ba6565b5b6000612b4d84828501612b14565b91505092915050565b600060ff82169050919050565b612b6c81612b56565b8114612b7757600080fd5b50565b600081359050612b8981612b63565b92915050565b600060208284031215612ba557612ba4611ba6565b5b6000612bb384828501612b7a565b91505092915050565b600082825260208201905092915050565b6000612bd882611e77565b612be28185612bbc565b9350612bf2818560208601611e93565b612bfb81611c8f565b840191505092915050565b612c0f81611bee565b82525050565b612c1e81611bb0565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000612c5c8383612c06565b60208301905092915050565b6000602082019050919050565b6000612c8082612c24565b612c8a8185612c2f565b9350612c9583612c40565b8060005b83811015612cc6578151612cad8882612c50565b9750612cb883612c68565b925050600181019050612c99565b5085935050505092915050565b612cdc81612150565b82525050565b6000610160830160008301518482036000860152612d008282612bcd565b9150506020830151612d156020860182612c06565b506040830151612d286040860182612c06565b506060830151612d3b6060860182612c06565b506080830151612d4e6080860182612c15565b5060a083015184820360a0860152612d668282612bcd565b91505060c083015184820360c0860152612d808282612c75565b91505060e083015184820360e0860152612d9a8282612c75565b915050610100830151612db1610100860182612c06565b50610120830151612dc6610120860182612cd3565b50610140830151612ddb610140860182612cd3565b508091505092915050565b612def81612b56565b82525050565b600060c0820190508181036000830152612e0f818a612ce2565b9050612e1e602083018961203c565b612e2b604083018861202d565b8181036060830152612e3e818688612a06565b9050612e4d6080830185612de6565b81810360a0830152612e5f8184611ebd565b905098975050505050505050565b6000604082019050612e82600083018561203c565b8181036020830152612e948184611ebd565b90509392505050565b600081519050612eac81611f3c565b92915050565b600060208284031215612ec857612ec7611ba6565b5b6000612ed684828501612e9d565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612f4882612150565b9150612f5383612150565b9250828202612f6181612150565b91508282048414831517612f7857612f77612f0e565b5b5092915050565b6000612f8a82612150565b9150612f9583612150565b9250828201905080821115612fad57612fac612f0e565b5b9291505056fea26469706673582212207c6a2571f2642421c4652c28346c8b7d87497b89d24aa7ace8daac9a8b750bb364736f6c63430008180033000000000000000000000000eeef0f55712c709cbaf17f98df88aeba7a3c298c000000000000000000000000f79641d66bf22e777f9cf74bdaf535cb253949090000000000000000000000001bd41c988fd8807a73e79cfb465df488e73d6c0d