0 txs
0 calls
constructor
No constructor.
functions
allowedCollectionsCounterByEventId
viewfunction allowedCollectionsCounterByEventId(uint256) view returns (uint256)
EventBaseUri
viewfunction EventBaseUri() view returns (string)
events
viewfunction events(uint256) view returns (address partner, uint256 startTime, uint256 endTime, uint256 rewardPerFlexer, uint256 another1TokenRewardPool, bool isPoapAssigned, bool isCancelled)
getClerkEventId
viewfunction getClerkEventId(address _clerk) view returns (uint256)
getEventsCount
viewfunction getEventsCount() view returns (uint256)
getRewardPerFlexer
viewfunction getRewardPerFlexer(uint256 eventId) view returns (uint256)
getStartAndEndTime
viewfunction getStartAndEndTime(uint256 eventId) view returns (uint256, uint256)
getTokenPool
viewfunction getTokenPool(uint256 eventId) view returns (uint256)
isClerk
viewfunction isClerk(address _clerk) view returns (bool)
isCollectionAllowed
viewfunction isCollectionAllowed(uint256 eventId, address collection) view returns (bool)
isEventCancelled
viewfunction isEventCancelled(uint256 eventId) view returns (bool)
isOperator
viewfunction isOperator(address _account) view returns (bool)
isPartner
viewfunction isPartner(address _addr) view returns (bool)
isPoapAssignedToEvent
viewfunction isPoapAssignedToEvent(uint256 eventId) view returns (bool)
merkleRootByEventId
viewfunction merkleRootByEventId(uint256) view returns (bytes32)
numPartners
viewfunction numPartners() view returns (uint256)
owner
viewfunction owner() view returns (address)
partnerLocked
viewfunction partnerLocked(address) view returns (bool)
partnerOfClerk
viewfunction partnerOfClerk(address _clerk) view returns (address)
partners
viewfunction partners(uint256) view returns (address)
uri
viewfunction uri(uint256 id) view returns (string)
__PartnerRegistry_initialize_unchained
nonpayablefunction __PartnerRegistry_initialize_unchained(string _eventBaseUri)
__PartnerRegistry_initialize
nonpayablefunction __PartnerRegistry_initialize(string _eventBaseUri)
addAllowedCollections
nonpayablefunction addAllowedCollections(uint256 eventId, address[] colectionAddresses)
addClerksToEvent
nonpayablefunction addClerksToEvent(uint256 eventId, address[] _clerks)
addOperator
nonpayablefunction addOperator(address _operator)
addOperators
nonpayablefunction addOperators(address[] _operators)
addPartner
nonpayablefunction addPartner(address _partner)
changePartnerLock
nonpayablefunction changePartnerLock(address partner, bool isLocked)
createEvent
nonpayablefunction createEvent(uint256 startTime, uint256 endTime, uint256 rewardPerFlexer, uint256 another1TokenRewardPool, bool isPoapAssigned)
modifyEvent
nonpayablefunction modifyEvent(uint256 eventId, uint256 startTime, uint256 endTime, uint256 rewardPerFlexer, uint256 another1TokenRewardPool, bool isPoapAssigned)
removeAllowedCollections
nonpayablefunction removeAllowedCollections(uint256 eventId, address[] colectionAddresses)
removeClerksFromEvent
nonpayablefunction removeClerksFromEvent(address[] _clerks)
removeOperator
nonpayablefunction removeOperator(address _operator)
removePartner
nonpayablefunction removePartner(address _partner)
renounceOwnership
nonpayablefunction renounceOwnership()
setEventBaseUri
nonpayablefunction setEventBaseUri(string _eventBaseUri)
setEventCancellation
nonpayablefunction setEventCancellation(uint256 eventId, bool isCancelled)
setMerkleRoot
nonpayablefunction setMerkleRoot(uint256 eventId, bytes32 merkleRoot)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
AllowedCollectionsAdded
event AllowedCollectionsAdded(uint256 indexed eventId, address[] collectionAddresses)
AllowedCollectionsRemoved
event AllowedCollectionsRemoved(uint256 indexed eventId, address[] collectionAddresses)
ClerkAddedToEvent
event ClerkAddedToEvent(uint256 indexed eventId, address clerk)
ClerkRemovedFromEvent
event ClerkRemovedFromEvent(uint256 indexed eventId, address clerk)
EventCancellation
event EventCancellation(uint256 indexed eventId, bool isCancelled)
EventCreated
event EventCreated(address indexed partner, uint256 index, uint256 startTime, uint256 endTime, uint256 rewardPerFlexer, uint256 another1TokenRewardPool, bool isPoapAssigned)
EventModified
event EventModified(address indexed partner, uint256 index, uint256 startTime, uint256 endTime, uint256 rewardPerFlexer, uint256 another1TokenRewardPool, bool isPoapAssigned)
Initialized
event Initialized(uint8 version)
MerkleRootChanged
event MerkleRootChanged(uint256 indexed eventId, bytes32 merkleRoot)
OperatorAccessChanged
event OperatorAccessChanged(address indexed operator, bool indexed status)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
PartnerLockChanged
event PartnerLockChanged(address indexed partner, bool isLocked)
PartnerRegistryChanged
event PartnerRegistryChanged(address partner, bool isAdded)
errors
No errors.
creation bytecode
0x608060405234801561001057600080fd5b50612df1806100206000396000f3fe608060405234801561001057600080fd5b50600436106102485760003560e01c8063927b7dda1161013b578063d3852681116100b8578063ebdfe9f71161007c578063ebdfe9f7146105a3578063f2fde38b146105b6578063f4b9cf9e146105c9578063f6fde968146105dc578063fa740047146105fc57600080fd5b8063d38526811461054f578063d44f7c4f14610562578063ddbb2a951461056a578063e0d7ce1e1461057d578063ea3c281a1461059057600080fd5b8063a0cdbadb116100ff578063a0cdbadb146104f0578063ac8a584a14610503578063bbbbe52f14610516578063c3b49d0414610529578063c61a8cf21461053c57600080fd5b8063927b7dda14610484578063986be0f3146104975780639870d7fe146104aa57806399b30b22146104bd578063a07aea1c146104dd57600080fd5b80633746203a116101c95780636d70f7ae1161018d5780636d70f7ae14610406578063715018a6146104195780638bf34237146104215780638c0f9aac146104345780638da5cb5b1461045f57600080fd5b80633746203a1461037a5780635348e6181461038d57806353f40e03146103a057806356ff942d146103b357806362e24452146103de57600080fd5b80631df1494a116102105780631df1494a146103215780632887c6971461032957806328a825e81461033c5780632c1b9ad41461035f57806330366d5f1461037257600080fd5b806306d720381461024d5780630b791430146102735780630e89341c146102c9578063110f2697146102e957806318712c211461030c575b600080fd5b61026061025b36600461286a565b61060f565b6040519081526020015b60405180910390f35b61028661028136600461286a565b61064b565b604080516001600160a01b03909816885260208801969096529486019390935260608501919091526080840152151560a0830152151560c082015260e00161026a565b6102dc6102d736600461286a565b6106a7565b60405161026a9190612ad3565b6102fc6102f736600461286a565b6106db565b604051901515815260200161026a565b61031f61031a36600461290b565b610720565b005b609854610260565b61031f6103373660046128a4565b610809565b6102fc61034a36600461274f565b60a06020526000908152604090205460ff1681565b61031f61036d3660046128e9565b6108ea565b609b54610260565b61031f610388366004612974565b6109f6565b61031f61039b36600461292c565b610d9f565b6102fc6103ae366004612882565b6111c9565b6102fc6103c136600461274f565b6001600160a01b03166000908152609c6020526040902054151590565b6103f16103ec36600461286a565b611212565b6040805192835260208301919091520161026a565b6102fc61041436600461274f565b611284565b61031f6112a2565b61031f61042f36600461274f565b6112b6565b6102fc61044236600461274f565b6001600160a01b0316600090815260996020526040902054151590565b6033546001600160a01b03165b6040516001600160a01b03909116815260200161026a565b61031f6104923660046128a4565b611480565b6102fc6104a536600461286a565b611640565b61031f6104b836600461274f565b611680565b6102606104cb36600461286a565b609f6020526000908152604090205481565b61031f6104eb3660046127a2565b611694565b6102606104fe36600461286a565b611740565b61031f61051136600461274f565b61177c565b61031f6105243660046127dd565b6117d1565b61046c61053736600461286a565b611913565b61031f61054a3660046127a2565b61193d565b61031f61055d3660046128a4565b611989565b6102dc611b4a565b61031f6105783660046127dd565b611bd8565b61031f61058b3660046127dd565b611c78565b61031f61059e36600461274f565b611ca8565b61031f6105b1366004612770565b611e89565b61031f6105c436600461274f565b611f44565b61046c6105d736600461274f565b611fba565b6102606105ea36600461286a565b609e6020526000908152604090205481565b61026061060a36600461274f565b612005565b6000609b828154811061063257634e487b7160e01b600052603260045260246000fd5b9060005260206000209060060201600401549050919050565b609b818154811061065b57600080fd5b60009182526020909120600690910201805460018201546002830154600384015460048501546005909501546001600160a01b0390941695509193909260ff8082169161010090041687565b6060609a6106b4836120c3565b6040516020016106c59291906129e0565b6040516020818303038152906040529050919050565b6000609b82815481106106fe57634e487b7160e01b600052603260045260246000fd5b6000918252602090912060069091020160050154610100900460ff1692915050565b81336001600160a01b0316609b828154811061074c57634e487b7160e01b600052603260045260246000fd5b60009182526020909120600690910201546001600160a01b0316148015610783575033600090815260a0602052604090205460ff16155b80610792575061079233611284565b6107b75760405162461bcd60e51b81526004016107ae90612b63565b60405180910390fd5b6000838152609f6020526040908190208390555183907fed9551baafa404c6917bd2cf30bb75a7b312fea74f2fc228f353b68afea66e90906107fc9085815260200190565b60405180910390a2505050565b81336001600160a01b0316609b828154811061083557634e487b7160e01b600052603260045260246000fd5b60009182526020909120600690910201546001600160a01b031614801561086c575033600090815260a0602052604090205460ff16155b8061087b575061087b33611284565b6108975760405162461bcd60e51b81526004016107ae90612b63565b60005b82518110156108e4576108d4848483815181106108c757634e487b7160e01b600052603260045260246000fd5b602002602001015161216e565b6108dd81612d74565b905061089a565b50505050565b81336001600160a01b0316609b828154811061091657634e487b7160e01b600052603260045260246000fd5b60009182526020909120600690910201546001600160a01b031614801561094d575033600090815260a0602052604090205460ff16155b8061095c575061095c33611284565b6109785760405162461bcd60e51b81526004016107ae90612b63565b81609b848154811061099a57634e487b7160e01b600052603260045260246000fd5b906000526020600020906006020160050160016101000a81548160ff021916908315150217905550827f4c61600b6260840de449d7488cad9cc2afe96f94643245495f1a98a73631af97836040516107fc911515815260200190565b85336001600160a01b0316609b8281548110610a2257634e487b7160e01b600052603260045260246000fd5b60009182526020909120600690910201546001600160a01b0316148015610a59575033600090815260a0602052604090205460ff16155b80610a685750610a6833611284565b610a845760405162461bcd60e51b81526004016107ae90612b63565b858511610afb576040805162461bcd60e51b81526020600482015260248101919091527f506172746e657252656769737472793a3a6d6f646966794576656e743a20656e60448201527f6454696d652063616e6e6f74206265206265666f726520737461727454696d6560648201526084016107ae565b60008411610b815760405162461bcd60e51b815260206004820152604760248201527f506172746e657252656769737472793a3a6d6f646966794576656e743a20726560448201527f77617264506572466c65786572206d7573742062652067726561746572207468606482015266616e207a65726f60c81b608482015260a4016107ae565b83831015610c1d5760405162461bcd60e51b815260206004820152605a60248201527f506172746e657252656769737472793a3a6d6f646966794576656e743a20616e60448201527f6f7468657231546f6b656e526577617264506f6f6c206d75737420626520677260648201527f6561746572207468616e20726577617264506572466c65786572000000000000608482015260a4016107ae565b85609b8881548110610c3f57634e487b7160e01b600052603260045260246000fd5b90600052602060002090600602016001018190555084609b8881548110610c7657634e487b7160e01b600052603260045260246000fd5b90600052602060002090600602016002018190555083609b8881548110610cad57634e487b7160e01b600052603260045260246000fd5b90600052602060002090600602016003018190555082609b8881548110610ce457634e487b7160e01b600052603260045260246000fd5b90600052602060002090600602016004018190555081609b8881548110610d1b57634e487b7160e01b600052603260045260246000fd5b6000918252602091829020600690910201600501805460ff191692151592909217909155604080518981529182018890528101869052606081018590526080810184905282151560a082015233907f5db5d6c165deaef236bea5dd39553e93773c7eedfc38ed84a448347e46a350d39060c00160405180910390a250505050505050565b3360009081526099602052604090205415158015610dcd575033600090815260a0602052604090205460ff16155b610e505760405162461bcd60e51b815260206004820152604860248201527f506172746e657252656769737472793a3a6f6e6c79556e6c6f636b656450617260448201527f746e65723a2061646472657373206973206e6f7420616e20756e6c6f636b6564606482015267103830b93a3732b960c11b608482015260a4016107ae565b848411610ec7576040805162461bcd60e51b81526020600482015260248101919091527f506172746e657252656769737472793a3a6372656174654576656e743a20656e60448201527f6454696d652063616e6e6f74206265206265666f726520737461727454696d6560648201526084016107ae565b60008311610f4d5760405162461bcd60e51b815260206004820152604760248201527f506172746e657252656769737472793a3a6372656174654576656e743a20726560448201527f77617264506572466c65786572206d7573742062652067726561746572207468606482015266616e207a65726f60c81b608482015260a4016107ae565b82821015610fe95760405162461bcd60e51b815260206004820152605a60248201527f506172746e657252656769737472793a3a6372656174654576656e743a20616e60448201527f6f7468657231546f6b656e526577617264506f6f6c206d75737420626520677260648201527f6561746572207468616e20726577617264506572466c65786572000000000000608482015260a4016107ae565b6040805160e0810182523380825260208201888152928201878152606083018781526080840187815286151560a08601908152600060c08701818152609b8054600180820183559382905298517fbba9db4cdbea0a37c207bbb83e20f828cd4441c49891101dc94fd20dc8efc3496006909a02998a0180546001600160a01b0319166001600160a01b0390921691909117905598517fbba9db4cdbea0a37c207bbb83e20f828cd4441c49891101dc94fd20dc8efc34a89015594517fbba9db4cdbea0a37c207bbb83e20f828cd4441c49891101dc94fd20dc8efc34b88015592517fbba9db4cdbea0a37c207bbb83e20f828cd4441c49891101dc94fd20dc8efc34c87015590517fbba9db4cdbea0a37c207bbb83e20f828cd4441c49891101dc94fd20dc8efc34d860155517fbba9db4cdbea0a37c207bbb83e20f828cd4441c49891101dc94fd20dc8efc34e9094018054925161ffff1990931694151561ff00191694909417610100921515929092029190911790925591547f0de1c8c7f419b7a67f1453399c951d8e55063794f0c87ecb3478b9537db22e879161118e91612cdf565b60408051918252602082018990528101879052606081018690526080810185905283151560a082015260c00160405180910390a25050505050565b6000828152609e60205260408120546111e45750600161120c565b506000828152609d602090815260408083206001600160a01b038516845290915290205460ff165b92915050565b600080609b838154811061123657634e487b7160e01b600052603260045260246000fd5b906000526020600020906006020160010154609b848154811061126957634e487b7160e01b600052603260045260246000fd5b90600052602060002090600602016002015491509150915091565b6001600160a01b031660009081526065602052604090205460ff1690565b6112aa612271565b6112b460006122cb565b565b6112bf33611284565b6112db5760405162461bcd60e51b81526004016107ae90612b06565b6001600160a01b0381166113575760405162461bcd60e51b815260206004820152603860248201527f506172746e657252656769737472793a3a616464506172746e65723a2061646460448201527f656420616464726573732063616e2774206265207a65726f000000000000000060648201526084016107ae565b6001600160a01b038116600090815260996020526040902054156113e35760405162461bcd60e51b815260206004820152603760248201527f506172746e657252656769737472793a3a616464506172746e65723a2070617260448201527f746e657220616c7265616479207265676973746572656400000000000000000060648201526084016107ae565b60988054600180820183557f2237a976fa961f5921fd19f2b03c925c725d77b20ce8f790c19709c03de4d81490910180546001600160a01b0319166001600160a01b0385169081179091559154600083815260996020908152604091829020929092558051938452908301919091527fa3edb6bc368358f84d282d6be55ad659e4329d4066041a5f31e4ab53350e8c0e910160405180910390a150565b81336001600160a01b0316609b82815481106114ac57634e487b7160e01b600052603260045260246000fd5b60009182526020909120600690910201546001600160a01b03161480156114e3575033600090815260a0602052604090205460ff16155b806114f257506114f233611284565b61150e5760405162461bcd60e51b81526004016107ae90612b63565b60005b825181101561160f57609d6000858152602001908152602001600020600084838151811061154f57634e487b7160e01b600052603260045260246000fd5b6020908102919091018101516001600160a01b031682528101919091526040016000205460ff161561159b576000848152609e6020526040812080549161159583612d22565b91905055505b6000848152609d60205260408120845182908690859081106115cd57634e487b7160e01b600052603260045260246000fd5b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905561160881612d74565b9050611511565b50827fb41ab7b52c87dca1d242bbd72ce2cf56691e4009e78d447e444dc9b291aed9fd836040516107fc9190612a86565b6000609b828154811061166357634e487b7160e01b600052603260045260246000fd5b600091825260209091206005600690920201015460ff1692915050565b611688612271565b6116918161231d565b50565b61169c612271565b60005b815181101561173c5760008282815181106116ca57634e487b7160e01b600052603260045260246000fd5b6020908102919091018101516001600160a01b038116600081815260659093526040808420805460ff1916600190811790915590519294509290917f1a2c385855a8f638e1b756a8eb477b4af53df30443ec505a9d5f25a0fd3db7709190a3508061173481612d74565b91505061169f565b5050565b6000609b828154811061176357634e487b7160e01b600052603260045260246000fd5b9060005260206000209060060201600301549050919050565b611784612271565b6001600160a01b038116600081815260656020526040808220805460ff19169055519091907f1a2c385855a8f638e1b756a8eb477b4af53df30443ec505a9d5f25a0fd3db770908390a350565b600054610100900460ff16158080156117f15750600054600160ff909116105b8061180b5750303b15801561180b575060005460ff166001145b61186e5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107ae565b6000805460ff191660011790558015611891576000805461ff0019166101001790555b600054610100900460ff166118b85760405162461bcd60e51b81526004016107ae90612bf5565b6118c13361236f565b6118ca82611c78565b801561173c576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b6098818154811061192357600080fd5b6000918252602090912001546001600160a01b0316905081565b60005b815181101561173c5761197982828151811061196c57634e487b7160e01b600052603260045260246000fd5b60200260200101516123a7565b61198281612d74565b9050611940565b81336001600160a01b0316609b82815481106119b557634e487b7160e01b600052603260045260246000fd5b60009182526020909120600690910201546001600160a01b03161480156119ec575033600090815260a0602052604090205460ff16155b806119fb57506119fb33611284565b611a175760405162461bcd60e51b81526004016107ae90612b63565b60005b8251811015611b1957609d60008581526020019081526020016000206000848381518110611a5857634e487b7160e01b600052603260045260246000fd5b6020908102919091018101516001600160a01b031682528101919091526040016000205460ff16611aa3576000848152609e60205260408120805491611a9d83612d74565b91905055505b6000848152609d60205260408120845160019290869085908110611ad757634e487b7160e01b600052603260045260246000fd5b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055611b1281612d74565b9050611a1a565b50827fe0ed25da6296e105d1b4315aa39c112a27880d069412bae10bf629ede2d780d2836040516107fc9190612a86565b609a8054611b5790612d39565b80601f0160208091040260200160405190810160405280929190818152602001828054611b8390612d39565b8015611bd05780601f10611ba557610100808354040283529160200191611bd0565b820191906000526020600020905b815481529060010190602001808311611bb357829003601f168201915b505050505081565b611be0612271565b6000815111611c655760405162461bcd60e51b8152602060048201526044602482018190527f506172746e657252656769737472793a3a7365744576656e7442617365557269908201527f204576656e74426173655572692063616e6e6f7420626520656d70747920737460648201526372696e6760e01b608482015260a4016107ae565b805161173c90609a906020840190612600565b600054610100900460ff16611c9f5760405162461bcd60e51b81526004016107ae90612bf5565b61169181611bd8565b611cb133611284565b611ccd5760405162461bcd60e51b81526004016107ae90612b06565b80611cef816001600160a01b0316600090815260996020526040902054151590565b611d0b5760405162461bcd60e51b81526004016107ae90612c40565b6001600160a01b038216600090815260996020526040812054611d3090600190612cdf565b60988054919250600091611d4690600190612cdf565b81548110611d6457634e487b7160e01b600052603260045260246000fd5b600091825260209091200154609880546001600160a01b039092169250829184908110611da157634e487b7160e01b600052603260045260246000fd5b600091825260209091200180546001600160a01b0319166001600160a01b0392909216919091179055611dd5826001612cc7565b6001600160a01b03808316600090815260996020526040808220939093559086168152908120556098805480611e1b57634e487b7160e01b600052603160045260246000fd5b60008281526020808220600019908401810180546001600160a01b0319169055909201909255604080516001600160a01b0388168152918201929092527fa3edb6bc368358f84d282d6be55ad659e4329d4066041a5f31e4ab53350e8c0e910160405180910390a150505050565b611e9233611284565b611eae5760405162461bcd60e51b81526004016107ae90612b06565b81611ed0816001600160a01b0316600090815260996020526040902054151590565b611eec5760405162461bcd60e51b81526004016107ae90612c40565b6001600160a01b038316600081815260a06020908152604091829020805460ff191686151590811790915591519182527f629d1652d95b59d9a90460fc0cb86df751380a6c4d71c25288f58d9d270a6ac591016107fc565b611f4c612271565b6001600160a01b038116611fb15760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ae565b611691816122cb565b6000609b611fc783612005565b81548110611fe557634e487b7160e01b600052603260045260246000fd5b60009182526020909120600690910201546001600160a01b031692915050565b6001600160a01b0381166000908152609c602052604081205461209e5760405162461bcd60e51b8152602060048201526044602482018190527f506172746e657252656769737472793a3a676574436c65726b4576656e744964908201527f3a20436c65726b206973206e6f742061737369676e656420746f20616e7920456064820152631d995b9d60e21b608482015260a4016107ae565b6001600160a01b0382166000908152609c602052604090205461120c90600190612cdf565b606060006120d083612499565b600101905060008167ffffffffffffffff8111156120fe57634e487b7160e01b600052604160045260246000fd5b6040519080825280601f01601f191660200182016040528015612128576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461216157612166565b612132565b509392505050565b6001600160a01b0381166121ea5760405162461bcd60e51b815260206004820152603d60248201527f506172746e657252656769737472793a3a616464436c65726b546f4576656e7460448201527f3a20436c65726b20616464726573732063616e2774206265207a65726f00000060648201526084016107ae565b6001600160a01b0381166000908152609c60205260409020541561221157612211816123a7565b61221c826001612cc7565b6001600160a01b0382166000818152609c6020908152604091829020939093555190815283917f621e2e1f8fcc57a0611697af08fd47636092a154b5a792c8b0afcc46f11b1c97910160405180910390a25050565b6033546001600160a01b031633146112b45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ae565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038116600081815260656020526040808220805460ff1916600190811790915590519092917f1a2c385855a8f638e1b756a8eb477b4af53df30443ec505a9d5f25a0fd3db77091a350565b600054610100900460ff166123965760405162461bcd60e51b81526004016107ae90612bf5565b61239e612571565b611691816125a0565b6123b081612005565b336001600160a01b0316609b82815481106123db57634e487b7160e01b600052603260045260246000fd5b60009182526020909120600690910201546001600160a01b0316148015612412575033600090815260a0602052604090205460ff16155b80612421575061242133611284565b61243d5760405162461bcd60e51b81526004016107ae90612b63565b600061244883612005565b6001600160a01b0384166000818152609c6020908152604080832092909255905191825291925082917f43d2c2522c5931913db3e933899a0e1ddadb277bf2e69fced8fa955d7f23676091016107fc565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106124d85772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310612504576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061252257662386f26fc10000830492506010015b6305f5e100831061253a576305f5e100830492506008015b612710831061254e57612710830492506004015b60648310612560576064830492506002015b600a831061120c5760010192915050565b600054610100900460ff166125985760405162461bcd60e51b81526004016107ae90612bf5565b6112b46125d0565b600054610100900460ff166125c75760405162461bcd60e51b81526004016107ae90612bf5565b611688816122cb565b600054610100900460ff166125f75760405162461bcd60e51b81526004016107ae90612bf5565b6112b4336122cb565b82805461260c90612d39565b90600052602060002090601f01602090048101928261262e5760008555612674565b82601f1061264757805160ff1916838001178555612674565b82800160010185558215612674579182015b82811115612674578251825591602001919060010190612659565b50612680929150612684565b5090565b5b808211156126805760008155600101612685565b80356001600160a01b03811681146126b057600080fd5b919050565b600082601f8301126126c5578081fd5b8135602067ffffffffffffffff8211156126e1576126e1612da5565b8160051b6126f0828201612c96565b83815282810190868401838801850189101561270a578687fd5b8693505b858410156127335761271f81612699565b83526001939093019291840191840161270e565b50979650505050505050565b803580151581146126b057600080fd5b600060208284031215612760578081fd5b61276982612699565b9392505050565b60008060408385031215612782578081fd5b61278b83612699565b91506127996020840161273f565b90509250929050565b6000602082840312156127b3578081fd5b813567ffffffffffffffff8111156127c9578182fd5b6127d5848285016126b5565b949350505050565b600060208083850312156127ef578182fd5b823567ffffffffffffffff80821115612806578384fd5b818501915085601f830112612819578384fd5b81358181111561282b5761282b612da5565b61283d601f8201601f19168501612c96565b91508082528684828501011115612852578485fd5b80848401858401378101909201929092529392505050565b60006020828403121561287b578081fd5b5035919050565b60008060408385031215612894578182fd5b8235915061279960208401612699565b600080604083850312156128b6578182fd5b82359150602083013567ffffffffffffffff8111156128d3578182fd5b6128df858286016126b5565b9150509250929050565b600080604083850312156128fb578182fd5b823591506127996020840161273f565b6000806040838503121561291d578182fd5b50508035926020909101359150565b600080600080600060a08688031215612943578081fd5b853594506020860135935060408601359250606086013591506129686080870161273f565b90509295509295909350565b60008060008060008060c0878903121561298c578081fd5b86359550602087013594506040870135935060608701359250608087013591506129b860a0880161273f565b90509295509295509295565b600081516129d6818560208601612cf6565b9290920192915050565b600080845482600182811c9150808316806129fc57607f831692505b6020808410821415612a1c57634e487b7160e01b87526022600452602487fd5b818015612a305760018114612a4157612a6d565b60ff19861689528489019650612a6d565b60008b815260209020885b86811015612a655781548b820152908501908301612a4c565b505084890196505b505050505050612a7d81856129c4565b95945050505050565b6020808252825182820181905260009190848201906040850190845b81811015612ac75783516001600160a01b031683529284019291840191600101612aa2565b50909695505050505050565b6020815260008251806020840152612af2816040850160208701612cf6565b601f01601f19169190910160400192915050565b6020808252603e908201527f4f70657261746f72416363657373436f6e74726f6c3a3a6f6e6c794f7065726160408201527f746f723a2063616c6c6572206973206e6f742061206f70657261746f722e0000606082015260800190565b60208082526066908201527f506172746e657252656769737472793a3a6f6e6c79556e6c6f636b656445766560408201527f6e744f776e65724f724f70657261746f723a2073656e646572206973206e656960608201527f7468657220756e6c6f636b6564204576656e74206f776e6572206e6f72204f7060808201526532b930ba37b960d11b60a082015260c00190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60208082526036908201527f506172746e657252656769737472793a3a6f6e6c79506172746e65723a206164604082015275323932b9b99034b9903737ba1030903830b93a3732b960511b606082015260800190565b604051601f8201601f1916810167ffffffffffffffff81118282101715612cbf57612cbf612da5565b604052919050565b60008219821115612cda57612cda612d8f565b500190565b600082821015612cf157612cf1612d8f565b500390565b60005b83811015612d11578181015183820152602001612cf9565b838111156108e45750506000910152565b600081612d3157612d31612d8f565b506000190190565b600181811c90821680612d4d57607f821691505b60208210811415612d6e57634e487b7160e01b600052602260045260246000fd5b50919050565b6000600019821415612d8857612d88612d8f565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fdfea2646970667358221220e7df01b10c2220b0c7b6c3c4d2c4b0d48d6714e7782e34de6472a0432619662264736f6c63430008040033