0 txs
12 calls
constructor
No constructor.
functions
currencyOS
viewfunction currencyOS() view returns (address)
feePool
viewfunction feePool() view returns (address)
futureEpochTime
viewfunction futureEpochTime() view returns (uint256)
getImplementation
viewfunction getImplementation() view returns (address)
governance
viewfunction governance() view returns (address)
inflationRate
viewfunction inflationRate() view returns (uint256)
integrateCheckpoint
viewfunction integrateCheckpoint() view returns (uint256)
integrateCheckpointOf
viewfunction integrateCheckpointOf(address) view returns (uint256)
integrateFraction
viewfunction integrateFraction(address) view returns (uint256)
integrateInvSupply
viewfunction integrateInvSupply(int128) view returns (uint256)
integrateInvSupplyOf
viewfunction integrateInvSupplyOf(address) view returns (uint256)
isKilled
viewfunction isKilled() view returns (bool)
pendingGovernance
viewfunction pendingGovernance() view returns (address)
period
viewfunction period() view returns (int128)
periodTimestamp
viewfunction periodTimestamp(int128) view returns (uint256)
permitDeps
viewfunction permitDeps(address _sender) view returns (bool)
priceFeed
viewfunction priceFeed() view returns (address)
proxiableUUID
viewfunction proxiableUUID() view returns (bytes32)
scoreWeightController
viewfunction scoreWeightController() view returns (address _scoreWeightController)
tester
viewfunction tester() view returns (address)
TOKENLESS_PRODUCTION
viewfunction TOKENLESS_PRODUCTION() view returns (uint256)
veYMT
viewfunction veYMT() view returns (address _veYMT)
WEEK
viewfunction WEEK() view returns (uint256)
workingBalances
viewfunction workingBalances(address) view returns (uint256)
workingSupply
viewfunction workingSupply() view returns (uint256)
yamato
viewfunction yamato() view returns (address _yamato)
YMT
viewfunction YMT() view returns (address _YMT)
ymtMinter
viewfunction ymtMinter() view returns (address _ymtMinter)
acceptGovernance
nonpayablefunction acceptGovernance()
bulkCheckpoint
nonpayablefunction bulkCheckpoint(address[] pledgesOwner_)
bulkUpdateScoreLimit
nonpayablefunction bulkUpdateScoreLimit(tuple[] pledges_, uint256 totalDebt_, address priceFeedAddress_)
checkpoint
nonpayablefunction checkpoint(address addr)
initialize
nonpayablefunction initialize(address ymtMinterAddr, address yamatoAddr)
kick
nonpayablefunction kick(address addr_)
revokeGovernance
nonpayablefunction revokeGovernance()
revokeTester
nonpayablefunction revokeTester()
setGovernance
nonpayablefunction setGovernance(address _newGoverner)
setKilled
nonpayablefunction setKilled(bool isKilled_)
updateScoreLimit
nonpayablefunction updateScoreLimit(address addr_, uint256 debt_, uint256 totalDebt_, uint256 collateralRatio_)
upgradeTo
nonpayablefunction upgradeTo(address newImplementation)
upgradeToAndCall
payablefunction upgradeToAndCall(address newImplementation, bytes data) payable
userCheckpoint
nonpayablefunction userCheckpoint(address addr_) returns (bool)
events
AdminChanged
event AdminChanged(address previousAdmin, address newAdmin)
BeaconUpgraded
event BeaconUpgraded(address indexed beacon)
Initialized
event Initialized(uint8 version)
NewPendingGovernance
event NewPendingGovernance(address _sender)
RevokeGovernance
event RevokeGovernance(address _sender)
UpdateGovernance
event UpdateGovernance(address _sender)
UpdateScoreLimit
event UpdateScoreLimit(address user, uint256 originalBalance, uint256 originalSupply, uint256 collateralRatio, uint256 workingBalance, uint256 workingSupply)
Upgraded
event Upgraded(address indexed implementation)
errors
No errors.
creation bytecode
0x60a06040523060601b60805234801561001757600080fd5b5060805160601c613ae661005260003960008181610f1001528181610f95015281816115b50152818161163a01526117200152613ae66000f3fe6080604052600436106102d15760003560e01c80638308abd411610179578063ae2e933b116100d6578063c7f07cd31161008a578063ef78d4fd11610064578063ef78d4fd14610783578063f39c38a0146107b0578063f4359ce5146107d057600080fd5b8063c7f07cd31461072b578063c8562f7214610740578063caa0b9ed1461075657600080fd5b8063b1bd6086116100bb578063b1bd6086146106d4578063b1ddc24e14610701578063bd4aa7471461071657600080fd5b8063ae2e933b1461069f578063b07b709b146106b457600080fd5b806396c551751161012d578063a972985e11610112578063a972985e1461064a578063aaf10f421461066a578063ab033ea91461067f57600080fd5b806396c55175146106145780639e48d35e1461063457600080fd5b80638c5e1b5b1161015e5780638c5e1b5b146105b85780638fe8a101146105cd578063958da8de146105e757600080fd5b80638308abd41461056857806384ce47091461058857600080fd5b80634f1ef28611610232578063601258ef116101e6578063722df5ef116101c0578063722df5ef146104f9578063741bef1a146105265780637699b4cd1461053b57600080fd5b8063601258ef146104ba57806363c189b3146104cf5780636f2c155b146104e457600080fd5b806352d1902d1161021757806352d1902d146104705780635aa6e675146104855780635e4f6054146104a557600080fd5b80634f1ef28614610430578063505362c41461044357600080fd5b80632729f3161161028957806331f9e35b1161026e57806331f9e35b146103da5780633659cfe6146103f0578063485cc9551461041057600080fd5b80632729f3161461037f57806331d304e1146103ba57600080fd5b806319eb292c116102ba57806319eb292c14610318578063238efcbc1461034a578063246cd1671461035f57600080fd5b8063061e4223146102d657806309599504146102f8575b600080fd5b3480156102e257600080fd5b506102f66102f13660046135b7565b6107e7565b005b34801561030457600080fd5b506102f66103133660046136b7565b610bf0565b34801561032457600080fd5b5061032d610c5d565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561035657600080fd5b506102f6610cdc565b34801561036b57600080fd5b506102f661037a366004613516565b610db3565b34801561038b57600080fd5b506103ac61039a366004613707565b60726020526000908152604090205481565b604051908152602001610341565b3480156103c657600080fd5b506102f66103d53660046134dc565b610e9e565b3480156103e657600080fd5b506103ac606b5481565b3480156103fc57600080fd5b506102f661040b3660046133ca565b610f05565b34801561041c57600080fd5b506102f661042b366004613402565b611081565b6102f661043e36600461343a565b6115aa565b34801561044f57600080fd5b50607154600f90810b810b900b6000908152607260205260409020546103ac565b34801561047c57600080fd5b506103ac611713565b34801561049157600080fd5b5060655461032d906001600160a01b031681565b3480156104b157600080fd5b5061032d6117d8565b3480156104c657600080fd5b5061032d61180c565b3480156104db57600080fd5b5061032d611840565b3480156104f057600080fd5b506102f6611889565b34801561050557600080fd5b506103ac610514366004613707565b60736020526000908152604090205481565b34801561053257600080fd5b5061032d6118f5565b34801561054757600080fd5b506103ac6105563660046133ca565b606f6020526000908152604090205481565b34801561057457600080fd5b5060675461032d906001600160a01b031681565b34801561059457600080fd5b506105a86105a33660046133ca565b611937565b6040519015158152602001610341565b3480156105c457600080fd5b5061032d6119db565b3480156105d957600080fd5b506069546105a89060ff1681565b3480156105f357600080fd5b506103ac6106023660046133ca565b606c6020526000908152604090205481565b34801561062057600080fd5b506102f661062f3660046133ca565b611a11565b34801561064057600080fd5b506103ac606a5481565b34801561065657600080fd5b506102f66106653660046133ca565b611ed0565b34801561067657600080fd5b5061032d611f2e565b34801561068b57600080fd5b506102f661069a3660046133ca565b611f61565b3480156106ab57600080fd5b5061032d61200f565b3480156106c057600080fd5b506105a86106cf3660046133ca565b612051565b3480156106e057600080fd5b506103ac6106ef3660046133ca565b606e6020526000908152604090205481565b34801561070d57600080fd5b506102f66122ca565b34801561072257600080fd5b506103ac600481565b34801561073757600080fd5b5061032d612364565b34801561074c57600080fd5b506103ac606d5481565b34801561076257600080fd5b506103ac6107713660046133ca565b60706020526000908152604090205481565b34801561078f57600080fd5b5060715461079d90600f0b81565b604051600f9190910b8152602001610341565b3480156107bc57600080fd5b5060665461032d906001600160a01b031681565b3480156107dc57600080fd5b506103ac62093a8081565b6107f033611937565b6108415760405162461bcd60e51b815260206004820152601c60248201527f596f7520617265206e6f742059616d61746f20636f6e74726163742e0000000060448201526064015b60405180910390fd5b600061084b6119db565b6001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561088357600080fd5b505afa158015610897573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108bb91906136ef565b606d5490915060005b8551811015610be65760008682815181106108ef57634e487b7160e01b600052603260045260246000fd5b602002602001015160600151905060006001600160a01b0316816001600160a01b0316141561091e5750610be6565b600087838151811061094057634e487b7160e01b600052603260045260246000fd5b6020908102919091018101518101516001600160a01b0384166000908152606c9092526040909120549091508161099e576001600160a01b0383166000908152606c60205260408120556109948186613972565b9450505050610bd6565b60008985815181106109c057634e487b7160e01b600052603260045260246000fd5b602090810291909101810151604080517f07136c40000000000000000000000000000000000000000000000000000000008152825160048201529282015160248401528101511515604483015260608101516001600160a01b0390811660648401526080909101516084830152891660a48201527325026b8e547500c57ba63596de177da0808aad07906307136c409060c40160206040518083038186803b158015610a6b57600080fd5b505af4158015610a7f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aa391906136ef565b90506000610aaf6119db565b6040516370a0823160e01b81526001600160a01b03878116600483015291909116906370a082319060240160206040518083038186803b158015610af257600080fd5b505afa158015610b06573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b2a91906136ef565b90506000610b3b858c85858d6123ad565b6001600160a01b0387166000908152606c60205260409020819055905083610b63828a61391b565b610b6d9190613972565b604080516001600160a01b0389168152602081018890529081018d9052606081018590526080810183905260a081018290529098507f9422593da8f6c7541395ef11223b1a3703fe9b92262c212d606c4af19a7b218f9060c00160405180910390a15050505050505b610bdf81613a1f565b90506108c4565b50606d5550505050565b6065546001600160a01b03163314610c4a5760405162461bcd60e51b815260206004820152601960248201527f596f7520617265206e6f742074686520676f7665726e65722e000000000000006044820152606401610838565b6069805460ff1916911515919091179055565b6000610c676117d8565b6001600160a01b03166319eb292c6040518163ffffffff1660e01b815260040160206040518083038186803b158015610c9f57600080fd5b505afa158015610cb3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cd791906133e6565b905090565b6066546001600160a01b03163314610d5c5760405162461bcd60e51b815260206004820152602160248201527f596f7520617265206e6f74207468652070656e64696e6720676f7665726e657260448201527f2e000000000000000000000000000000000000000000000000000000000000006064820152608401610838565b606654606580546001600160a01b0319166001600160a01b0390921691821790556040519081527f8d55d160c0009eb3d739442df0a3ca089ed64378bfac017e7ddad463f9815b87906020015b60405180910390a1565b610dbc33611937565b610e085760405162461bcd60e51b815260206004820152601c60248201527f596f7520617265206e6f742059616d61746f20636f6e74726163742e000000006044820152606401610838565b60005b8151811015610e9a5760006001600160a01b0316828281518110610e3f57634e487b7160e01b600052603260045260246000fd5b60200260200101516001600160a01b03161415610e5a575050565b610e8a828281518110610e7d57634e487b7160e01b600052603260045260246000fd5b6020026020010151612455565b610e9381613a1f565b9050610e0b565b5050565b610ea733611937565b610ef35760405162461bcd60e51b815260206004820152601c60248201527f596f7520617265206e6f742059616d61746f20636f6e74726163742e000000006044820152606401610838565b610eff84848484612a15565b50505050565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610f935760405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201526b19195b1959d85d1958d85b1b60a21b6064820152608401610838565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610fee7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b6001600160a01b0316146110595760405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201526b6163746976652070726f787960a01b6064820152608401610838565b61106281612bd5565b6040805160008082526020820190925261107e91839190612c2f565b50565b600054610100900460ff16158080156110a15750600054600160ff909116105b806110bb5750303b1580156110bb575060005460ff166001145b61112d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610838565b6000805460ff191660011790558015611150576000805461ff0019166101001790555b61115982612dde565b60006040518060400160405280600881526020016719195c1ccb96535560c21b81525060405160200161118c91906137c4565b60405160208183030381529060405280519060200120905060006040518060400160405280600a81526020016919195c1ccb9d9956535560b21b8152506040516020016111d991906137c4565b60405160208183030381529060405280519060200120905060006040518060400160405280600e81526020017f646570732e796d744d696e74657200000000000000000000000000000000000081525060405160200161123991906137c4565b60405160208183030381529060405280519060200120905060006040518060400160405280601a81526020017f646570732e53636f7265576569676874436f6e74726f6c6c657200000000000081525060405160200161129991906137c4565b6040516020818303038152906040528051906020012090506000876001600160a01b031663601258ef6040518163ffffffff1660e01b815260040160206040518083038186803b1580156112ec57600080fd5b505afa158015611300573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061132491906133e6565b90506000886001600160a01b031663c7f07cd36040518163ffffffff1660e01b815260040160206040518083038186803b15801561136157600080fd5b505afa158015611375573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061139991906133e6565b90506000816001600160a01b0316638c5e1b5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156113d657600080fd5b505afa1580156113ea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061140e91906133e6565b8388558087558a86558285556000805260726020908152427fb5ad54240dc61c51d3a3e8d3f925722e010966ae263d67344c5fb60bddebddae55604080517f2c4e722e00000000000000000000000000000000000000000000000000000000815290519293506001600160a01b03861692632c4e722e92600480840193919291829003018186803b1580156114a257600080fd5b505afa1580156114b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114da91906136ef565b606b81905550826001600160a01b031663277dbafb6040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561151b57600080fd5b505af115801561152f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061155391906136ef565b606a555050851594506115a59350505050576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156116385760405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201526b19195b1959d85d1958d85b1b60a21b6064820152608401610838565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166116937f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b6001600160a01b0316146116fe5760405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201526b6163746976652070726f787960a01b6064820152608401610838565b61170782612bd5565b610e9a82826001612c2f565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146117b35760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c00000000000000006064820152608401610838565b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc90565b60008060686040516020016117ed91906137f7565b60408051601f1981840301815291905280516020909101205492915050565b6000806040518060400160405280600881526020016719195c1ccb96535560c21b8152506040516020016117ed91906137c4565b6000806040518060400160405280600e81526020017f646570732e796d744d696e7465720000000000000000000000000000000000008152506040516020016117ed91906137c4565b6065546001600160a01b031633146118e35760405162461bcd60e51b815260206004820152601960248201527f596f7520617265206e6f742074686520676f7665726e65722e000000000000006044820152606401610838565b606780546001600160a01b0319169055565b60006118ff610c5d565b6001600160a01b031663741bef1a6040518163ffffffff1660e01b815260040160206040518083038186803b158015610c9f57600080fd5b60006119416117d8565b6040517f84ce47090000000000000000000000000000000000000000000000000000000081526001600160a01b03848116600483015291909116906384ce47099060240160206040518083038186803b15801561199d57600080fd5b505afa1580156119b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119d591906136d3565b92915050565b6000806040518060400160405280600a81526020016919195c1ccb9d9956535560b21b8152506040516020016117ed91906137c4565b6001600160a01b0381166000908152606f602052604081205490611a336119db565b6001600160a01b031663eac6a66784611a4a6119db565b6040517f81fc83bb0000000000000000000000000000000000000000000000000000000081526001600160a01b03888116600483015291909116906381fc83bb9060240160206040518083038186803b158015611aa657600080fd5b505afa158015611aba573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ade91906136ef565b6040516001600160e01b031960e085901b1681526001600160a01b039092166004830152602482015260440160206040518083038186803b158015611b2257600080fd5b505afa158015611b36573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b5a91906136ef565b90506000611b666117d8565b60405163483b4f0760e11b81526001600160a01b03868116600483015291909116906390769e0e9060240160a06040518083038186803b158015611ba957600080fd5b505afa158015611bbd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611be19190613728565b602081015190915060007325026b8e547500c57ba63596de177da0808aad076307136c4084611c0e6118f5565b604080516001600160e01b031960e086901b1681528351600482015260208401516024820152908301511515604482015260608301516001600160a01b0390811660648301526080909301516084820152911660a482015260c40160206040518083038186803b158015611c8157600080fd5b505af4158015611c95573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cb991906136ef565b90506000611cc682612de7565b9050611cd06119db565b6040516370a0823160e01b81526001600160a01b03898116600483015291909116906370a082319060240160206040518083038186803b158015611d1357600080fd5b505afa158015611d27573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d4b91906136ef565b1580611d5657508585115b611da25760405162461bcd60e51b815260206004820152600b60248201527f4e6f7420616c6c6f7765640000000000000000000000000000000000000000006044820152606401610838565b600a8181611db1600487613953565b611dbb9190613933565b611dc59190613953565b611dcf9190613933565b6001600160a01b0388166000908152606c602052604090205411611e355760405162461bcd60e51b815260206004820152600a60248201527f4e6f74206e6565646564000000000000000000000000000000000000000000006044820152606401610838565b611e3e87612455565b6000611e486117d8565b6001600160a01b03166334ce998a6040518163ffffffff1660e01b815260040160206040518083038186803b158015611e8057600080fd5b505afa158015611e94573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611eb891906136ef565b9050611ec688858386612a15565b5050505050505050565b611ed933611937565b611f255760405162461bcd60e51b815260206004820152601c60248201527f596f7520617265206e6f742059616d61746f20636f6e74726163742e000000006044820152606401610838565b61107e81612455565b6000610cd77f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b6065546001600160a01b03163314611fbb5760405162461bcd60e51b815260206004820152601960248201527f596f7520617265206e6f742074686520676f7665726e65722e000000000000006044820152606401610838565b606680546001600160a01b0319166001600160a01b0383169081179091556040519081527f90ad4c550d25bd23af61db38d1ff8671b89edaaa0bca0fc36bac5084ecc120bd9060200160405180910390a150565b6000612019610c5d565b6001600160a01b031663ae2e933b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610c9f57600080fd5b6000336001600160a01b0383161480612082575061206d611840565b6001600160a01b0316336001600160a01b0316145b6120ce5760405162461bcd60e51b815260206004820152601160248201527f6465763a20756e617574686f72697a65640000000000000000000000000000006044820152606401610838565b6120d782612455565b60006120e16117d8565b60405163483b4f0760e11b81526001600160a01b03858116600483015291909116906390769e0e9060240160a06040518083038186803b15801561212457600080fd5b505afa158015612138573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061215c9190613728565b905060007325026b8e547500c57ba63596de177da0808aad076307136c40836121836118f5565b604080516001600160e01b031960e086901b1681528351600482015260208401516024820152908301511515604482015260608301516001600160a01b0390811660648301526080909301516084820152911660a482015260c40160206040518083038186803b1580156121f657600080fd5b505af415801561220a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061222e91906136ef565b602083015190915060006122406117d8565b6001600160a01b03166334ce998a6040518163ffffffff1660e01b815260040160206040518083038186803b15801561227857600080fd5b505afa15801561228c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122b091906136ef565b90506122be86838386612a15565b50600195945050505050565b6065546001600160a01b031633146123245760405162461bcd60e51b815260206004820152601960248201527f596f7520617265206e6f742074686520676f7665726e65722e000000000000006044820152606401610838565b606580546001600160a01b03191690556040513381527f24e4875c487b4800d52ab8484eb3ad19b3485a88e0b19b6cfdac90da12ee55fd90602001610da9565b6000806040518060400160405280601a81526020017f646570732e53636f7265576569676874436f6e74726f6c6c65720000000000008152506040516020016117ed91906137c4565b600080600a6123bd600489613953565b6123c79190613933565b9050821561241257600a6123dc600482613972565b846123e7878a613953565b6123f19190613933565b6123fb9190613953565b6124059190613933565b61240f908261391b565b90505b61241c8782612e35565b9050861561244b57600061242f86612de7565b9050600a61243d8284613953565b6124479190613933565b9150505b9695505050505050565b6124a76040518061012001604052806000600f0b815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b607154600f90810b810b810b808352810b810b6000908152607260209081526040808320548286019081528551850b90940b83526073909152908190205490830152606b5460808301819052606a5460c0840181905260a084019190915290511161260c5761251461180c565b6001600160a01b031663277dbafb6040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561254e57600080fd5b505af1158015612562573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061258691906136ef565b606a5561259161180c565b6001600160a01b0316632c4e722e6040518163ffffffff1660e01b815260040160206040518083038186803b1580156125c957600080fd5b505afa1580156125dd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061260191906136ef565b60a08201819052606b555b60695460ff16156126265760006080820181905260a08201525b80602001514211156128e657606d5461263d612364565b6040517f2db8ef240000000000000000000000000000000000000000000000000000000081523060048201526001600160a01b039190911690632db8ef2490602401600060405180830381600087803b15801561269957600080fd5b505af11580156126ad573d6000803e3d6000fd5b50505050602082015160006126e462093a80806126ca818661391b565b6126d49190613933565b6126de9190613953565b42612e35565b905060005b6101f48110156128e15760006126ff8484613972565b9050600061270b612364565b6001600160a01b031663d4a35dc13062093a80612728818a613933565b6127329190613953565b6040516001600160e01b031960e085901b1681526001600160a01b039092166004830152602482015260440160206040518083038186803b15801561277657600080fd5b505afa15801561278a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127ae91906136ef565b905085156128ae57848760c00151101580156127cd5750838760c00151105b156128735785858860c001516127e39190613972565b8289608001516127f39190613953565b6127fd9190613953565b6128079190613933565b87604001818151612818919061391b565b90525060a0870151608088015260c087015186906128369086613972565b8289608001516128469190613953565b6128509190613953565b61285a9190613933565b8760400181815161286b919061391b565b9052506128ae565b85828289608001516128859190613953565b61288f9190613953565b6128999190613933565b876040018181516128aa919061391b565b9052505b428414156128bd5750506128e1565b8394506128d262093a80856126de919061391b565b935082600101925050506126e9565b505050505b805181906128f3906139f0565b600f90810b810b9091528151607180547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166fffffffffffffffffffffffffffffffff92840b928316179055810b600090815260726020908152604080832042905580850180518651860b90950b845260738352818420949094556001600160a01b0386168352606c825280832054606e9092529091205491519091670de0b6b3a7640000916129a39190613972565b6129ad9083613953565b6129b79190613933565b6001600160a01b038416600090815260706020526040812080549091906129df90849061391b565b9091555050506040908101516001600160a01b039092166000908152606e602090815282822093909355606f9092529020429055565b6000612a1f6119db565b6040516370a0823160e01b81526001600160a01b03878116600483015291909116906370a082319060240160206040518083038186803b158015612a6257600080fd5b505afa158015612a76573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a9a91906136ef565b90506000612aa66119db565b6001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015612ade57600080fd5b505afa158015612af2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b1691906136ef565b90506000612b2786868686866123ad565b6001600160a01b0388166000908152606c60205260408120805490839055606d54929350918290612b5990859061391b565b612b639190613972565b606d819055604080516001600160a01b038c168152602081018b9052908101899052606081018890526080810185905260a081018290529091507f9422593da8f6c7541395ef11223b1a3703fe9b92262c212d606c4af19a7b218f9060c00160405180910390a1505050505050505050565b6065546001600160a01b0316331461107e5760405162461bcd60e51b815260206004820152601960248201527f596f7520617265206e6f742074686520676f7665726e65722e000000000000006044820152606401610838565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615612c62576115a583612e4d565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b815260040160206040518083038186803b158015612c9b57600080fd5b505afa925050508015612ccb575060408051601f3d908101601f19168201909252612cc8918101906136ef565b60015b612d3d5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201527f6f6e206973206e6f7420555550530000000000000000000000000000000000006064820152608401610838565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8114612dd25760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f7860448201527f6961626c655555494400000000000000000000000000000000000000000000006064820152608401610838565b506115a5838383612f0b565b61107e81612f30565b60006161a88210612dfa57506019919050565b614e208210612e0b57506014919050565b613a988210612e1c5750600f919050565b6132c88210612e2d5750600a919050565b506000919050565b6000818310612e445781612e46565b825b9392505050565b6001600160a01b0381163b612eca5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201527f6f74206120636f6e7472616374000000000000000000000000000000000000006064820152608401610838565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b612f1483612fac565b600082511180612f215750805b156115a557610eff8383612fec565b600054610100900460ff16612f9b5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610838565b612fa36130f7565b61107e8161316c565b612fb581612e4d565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606001600160a01b0383163b61306b5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f60448201527f6e747261637400000000000000000000000000000000000000000000000000006064820152608401610838565b600080846001600160a01b03168460405161308691906137a8565b600060405180830381855af49150503d80600081146130c1576040519150601f19603f3d011682016040523d82523d6000602084013e6130c6565b606091505b50915091506130ee8282604051806060016040528060278152602001613a8a6027913961324f565b95945050505050565b600054610100900460ff166131625760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610838565b61316a613268565b565b600054610100900460ff166131d75760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610838565b60408051808201909152600b8082527f646570732e59616d61746f000000000000000000000000000000000000000000602090920191825261321b91606891613321565b506000606860405160200161323091906137f7565b6040516020818303038152906040528051906020012090508181555050565b6060831561325e575081612e46565b612e4683836132f7565b600054610100900460ff166132d35760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610838565b60658054336001600160a01b03199182168117909255606780549091169091179055565b8151156133075781518083602001fd5b8060405162461bcd60e51b815260040161083891906137c4565b82805461332d906139b5565b90600052602060002090601f01602090048101928261334f5760008555613395565b82601f1061336857805160ff1916838001178555613395565b82800160010185558215613395579182015b8281111561339557825182559160200191906001019061337a565b506133a19291506133a5565b5090565b5b808211156133a157600081556001016133a6565b80356133c581613a66565b919050565b6000602082840312156133db578081fd5b8135612e4681613a66565b6000602082840312156133f7578081fd5b8151612e4681613a66565b60008060408385031215613414578081fd5b823561341f81613a66565b9150602083013561342f81613a66565b809150509250929050565b6000806040838503121561344c578182fd5b823561345781613a66565b915060208381013567ffffffffffffffff80821115613474578384fd5b818601915086601f830112613487578384fd5b81358181111561349957613499613a50565b6134ab601f8201601f191685016138c6565b915080825287848285010111156134c0578485fd5b8084840185840137810190920192909252919491935090915050565b600080600080608085870312156134f1578182fd5b84356134fc81613a66565b966020860135965060408601359560600135945092505050565b60006020808385031215613528578182fd5b823567ffffffffffffffff81111561353e578283fd5b8301601f8101851361354e578283fd5b803561356161355c826138f7565b6138c6565b80828252848201915084840188868560051b8701011115613580578687fd5b8694505b838510156135ab57803561359781613a66565b835260019490940193918501918501613584565b50979650505050505050565b600080600060608085870312156135cc578384fd5b843567ffffffffffffffff8111156135e2578485fd5b8501601f810187136135f2578485fd5b8035602061360261355c836138f7565b8281528181019084830160a0808602870185018d1015613620578a8bfd5b8a96505b858710156136925780828e03121561363a578a8bfd5b61364261389d565b82358152858301358682015260408084013561365d81613a7b565b908201528289013561366e81613a66565b818a0152608083810135908201528452600196909601959284019290810190613624565b50909850505087013594506136ae9250506040860190506133ba565b90509250925092565b6000602082840312156136c8578081fd5b8135612e4681613a7b565b6000602082840312156136e4578081fd5b8151612e4681613a7b565b600060208284031215613700578081fd5b5051919050565b600060208284031215613718578081fd5b813580600f0b8114612e46578182fd5b600060a08284031215613739578081fd5b60405160a0810181811067ffffffffffffffff8211171561375c5761375c613a50565b80604052508251815260208301516020820152604083015161377d81613a7b565b6040820152606083015161379081613a66565b60608201526080928301519281019290925250919050565b600082516137ba818460208701613989565b9190910192915050565b60208152600082518060208401526137e3816040850160208701613989565b601f01601f19169190910160400192915050565b6000602080835281845483600182811c91508083168061381857607f831692505b85831081141561383657634e487b7160e01b87526022600452602487fd5b87860183815260200181801561385357600181146138645761388e565b60ff1986168252878201965061388e565b60008b815260209020895b868110156138885781548482015290850190890161386f565b83019750505b50949998505050505050505050565b60405160a0810167ffffffffffffffff811182821017156138c0576138c0613a50565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156138ef576138ef613a50565b604052919050565b600067ffffffffffffffff82111561391157613911613a50565b5060051b60200190565b6000821982111561392e5761392e613a3a565b500190565b60008261394e57634e487b7160e01b81526012600452602481fd5b500490565b600081600019048311821515161561396d5761396d613a3a565b500290565b60008282101561398457613984613a3a565b500390565b60005b838110156139a457818101518382015260200161398c565b83811115610eff5750506000910152565b600181811c908216806139c957607f821691505b602082108114156139ea57634e487b7160e01b600052602260045260246000fd5b50919050565b600081600f0b6f7fffffffffffffffffffffffffffffff811415613a1657613a16613a3a565b60010192915050565b6000600019821415613a3357613a33613a3a565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b038116811461107e57600080fd5b801515811461107e57600080fdfe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220d6b13d09ee1dae4a4fea18f3806bd942156c8f66809f8577bfee869098259e2064736f6c63430008040033