@venusprotocol/venus-protocol 10.2.0-slim-dev.4 → 10.2.0-slim-dev.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/artifacts/contracts/Comptroller/ComptrollerInterface.sol/ComptrollerInterface.json +13 -0
- package/artifacts/contracts/Comptroller/ComptrollerStorage.sol/ComptrollerV10Storage.json +2 -2
- package/artifacts/contracts/Comptroller/ComptrollerStorage.sol/ComptrollerV11Storage.json +2 -2
- package/artifacts/contracts/Comptroller/ComptrollerStorage.sol/ComptrollerV12Storage.json +2 -2
- package/artifacts/contracts/Comptroller/ComptrollerStorage.sol/ComptrollerV13Storage.json +2 -2
- package/artifacts/contracts/Comptroller/ComptrollerStorage.sol/ComptrollerV14Storage.json +2 -2
- package/artifacts/contracts/Comptroller/ComptrollerStorage.sol/ComptrollerV15Storage.json +2 -2
- package/artifacts/contracts/Comptroller/ComptrollerStorage.sol/ComptrollerV16Storage.json +2 -2
- package/artifacts/contracts/Comptroller/ComptrollerStorage.sol/ComptrollerV17Storage.json +2 -2
- package/artifacts/contracts/Comptroller/ComptrollerStorage.sol/ComptrollerV18Storage.json +2 -2
- package/artifacts/contracts/Comptroller/ComptrollerStorage.sol/ComptrollerV19Storage.json +749 -0
- package/artifacts/contracts/Comptroller/ComptrollerStorage.sol/ComptrollerV1Storage.json +2 -2
- package/artifacts/contracts/Comptroller/ComptrollerStorage.sol/ComptrollerV2Storage.json +2 -2
- package/artifacts/contracts/Comptroller/ComptrollerStorage.sol/ComptrollerV3Storage.json +2 -2
- package/artifacts/contracts/Comptroller/ComptrollerStorage.sol/ComptrollerV4Storage.json +2 -2
- package/artifacts/contracts/Comptroller/ComptrollerStorage.sol/ComptrollerV5Storage.json +2 -2
- package/artifacts/contracts/Comptroller/ComptrollerStorage.sol/ComptrollerV6Storage.json +2 -2
- package/artifacts/contracts/Comptroller/ComptrollerStorage.sol/ComptrollerV7Storage.json +2 -2
- package/artifacts/contracts/Comptroller/ComptrollerStorage.sol/ComptrollerV8Storage.json +2 -2
- package/artifacts/contracts/Comptroller/ComptrollerStorage.sol/ComptrollerV9Storage.json +2 -2
- package/artifacts/contracts/Comptroller/ComptrollerStorage.sol/UnitrollerAdminStorage.json +2 -2
- package/artifacts/contracts/Comptroller/Diamond/Diamond.sol/Diamond.json +15 -2
- package/artifacts/contracts/Comptroller/Diamond/DiamondConsolidated.sol/DiamondConsolidated.json +53 -2
- package/artifacts/contracts/Comptroller/Diamond/facets/FacetBase.sol/FacetBase.json +15 -2
- package/artifacts/contracts/Comptroller/Diamond/facets/FlashLoanFacet.sol/FlashLoanFacet.json +15 -2
- package/artifacts/contracts/Comptroller/Diamond/facets/MarketFacet.sol/MarketFacet.json +15 -2
- package/artifacts/contracts/Comptroller/Diamond/facets/PolicyFacet.sol/PolicyFacet.json +15 -2
- package/artifacts/contracts/Comptroller/Diamond/facets/RewardFacet.sol/RewardFacet.json +15 -2
- package/artifacts/contracts/Comptroller/Diamond/facets/SetterFacet.sol/SetterFacet.json +53 -2
- package/artifacts/contracts/Comptroller/Diamond/facets/XVSRewardsHelper.sol/XVSRewardsHelper.json +15 -2
- package/artifacts/contracts/Comptroller/Diamond/interfaces/IRewardFacet.sol/IRewardFacet.json +0 -87
- package/artifacts/contracts/Comptroller/Diamond/interfaces/ISetterFacet.sol/ISetterFacet.json +19 -0
- package/artifacts/contracts/Comptroller/Unitroller.sol/Unitroller.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/ComptrollerStorageR1.sol/ComptrollerV10StorageR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/ComptrollerStorageR1.sol/ComptrollerV11StorageR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/ComptrollerStorageR1.sol/ComptrollerV12StorageR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/ComptrollerStorageR1.sol/ComptrollerV13StorageR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/ComptrollerStorageR1.sol/ComptrollerV14StorageR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/ComptrollerStorageR1.sol/ComptrollerV15StorageR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/ComptrollerStorageR1.sol/ComptrollerV16StorageR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/ComptrollerStorageR1.sol/ComptrollerV1StorageR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/ComptrollerStorageR1.sol/ComptrollerV2StorageR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/ComptrollerStorageR1.sol/ComptrollerV3StorageR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/ComptrollerStorageR1.sol/ComptrollerV4StorageR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/ComptrollerStorageR1.sol/ComptrollerV5StorageR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/ComptrollerStorageR1.sol/ComptrollerV6StorageR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/ComptrollerStorageR1.sol/ComptrollerV7StorageR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/ComptrollerStorageR1.sol/ComptrollerV8StorageR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/ComptrollerStorageR1.sol/ComptrollerV9StorageR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/ComptrollerStorageR1.sol/UnitrollerAdminStorageR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/Diamond/DiamondConsolidatedR1.sol/DiamondConsolidatedR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/Diamond/DiamondR1.sol/DiamondR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/Diamond/facets/FacetBaseR1.sol/FacetBaseR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/Diamond/facets/MarketFacetR1.sol/MarketFacetR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/Diamond/facets/PolicyFacetR1.sol/PolicyFacetR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/Diamond/facets/RewardFacetR1.sol/RewardFacetR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/Diamond/facets/SetterFacetR1.sol/SetterFacetR1.json +2 -2
- package/artifacts/contracts/Comptroller/legacy/Diamond/facets/XVSRewardsHelperR1.sol/XVSRewardsHelperR1.json +2 -2
- package/artifacts/contracts/DelegateBorrowers/MoveDebtDelegate.sol/MoveDebtDelegate.json +2 -2
- package/artifacts/contracts/DelegateBorrowers/SwapDebtDelegate.sol/SwapDebtDelegate.json +2 -2
- package/artifacts/contracts/Governance/TokenRedeemer.sol/TokenRedeemer.json +2 -2
- package/artifacts/contracts/Lens/ComptrollerLens.sol/ComptrollerLens.json +2 -2
- package/artifacts/contracts/Lens/SnapshotLens.sol/SnapshotLens.json +24 -4
- package/artifacts/contracts/Lens/VenusLens.sol/VenusLens.json +2 -2
- package/artifacts/contracts/Liquidator/BUSDLiquidator.sol/BUSDLiquidator.json +2 -2
- package/artifacts/contracts/Liquidator/Liquidator.sol/Liquidator.json +2 -2
- package/artifacts/contracts/PegStability/PegStability.sol/PegStability.json +2 -2
- package/artifacts/contracts/Tokens/Prime/Prime.sol/Prime.json +2 -2
- package/artifacts/contracts/Tokens/Prime/PrimeStorage.sol/PrimeStorageV1.json +2 -2
- package/artifacts/contracts/Tokens/VAI/VAIController.sol/VAIController.json +2 -2
- package/artifacts/contracts/Tokens/VAI/VAIControllerStorage.sol/VAIControllerStorageG1.json +2 -2
- package/artifacts/contracts/Tokens/VAI/VAIControllerStorage.sol/VAIControllerStorageG2.json +2 -2
- package/artifacts/contracts/Tokens/VAI/VAIControllerStorage.sol/VAIControllerStorageG3.json +2 -2
- package/artifacts/contracts/Tokens/VAI/VAIControllerStorage.sol/VAIControllerStorageG4.json +2 -2
- package/artifacts/contracts/Tokens/VAI/VAIControllerStorage.sol/VAIUnitrollerAdminStorage.json +2 -2
- package/artifacts/contracts/Tokens/VAI/VAIUnitroller.sol/VAIUnitroller.json +2 -2
- package/artifacts/contracts/Tokens/VTokens/VBNB.sol/VBNB.json +2 -2
- package/artifacts/contracts/Tokens/VTokens/VBep20.sol/VBep20.json +2 -2
- package/artifacts/contracts/Tokens/VTokens/VBep20Delegate.sol/VBep20Delegate.json +2 -2
- package/artifacts/contracts/Tokens/VTokens/VBep20Delegator.sol/VBep20Delegator.json +2 -2
- package/artifacts/contracts/Tokens/VTokens/VBep20Immutable.sol/VBep20Immutable.json +2 -2
- package/artifacts/contracts/Tokens/VTokens/VTokenInterfaces.sol/VTokenStorage.json +2 -2
- package/artifacts/contracts/Tokens/VTokens/VTokenInterfaces.sol/VTokenStorageBase.json +2 -2
- package/artifacts/contracts/Utils/ErrorReporter.sol/ComptrollerErrorReporter.json +2 -2
- package/artifacts/contracts/Utils/ErrorReporter.sol/TokenErrorReporter.json +2 -2
- package/artifacts/contracts/Utils/ErrorReporter.sol/VAIControllerErrorReporter.json +2 -2
- package/artifacts/contracts/test/BadFlashLoanReceiver.sol/BadFlashLoanReceiver.json +2 -2
- package/artifacts/contracts/test/BorrowDebtFlashLoanReceiver.sol/BorrowDebtFlashLoanReceiver.json +2 -2
- package/artifacts/contracts/test/ComptrollerHarness.sol/ComptrollerHarness.json +53 -2
- package/artifacts/contracts/test/ComptrollerHarness.sol/EchoTypesComptroller.json +2 -2
- package/artifacts/contracts/test/ComptrollerMock.sol/ComptrollerMock.json +53 -2
- package/artifacts/contracts/test/ComptrollerMockR1.sol/ComptrollerMockR1.json +2 -2
- package/artifacts/contracts/test/ComptrollerScenario.sol/ComptrollerScenario.json +53 -2
- package/artifacts/contracts/test/DiamondHarness.sol/DiamondHarness.json +15 -2
- package/artifacts/contracts/test/EvilXDelegator.sol/EvilXDelegator.json +2 -2
- package/artifacts/contracts/test/EvilXToken.sol/EvilXToken.json +2 -2
- package/artifacts/contracts/test/EvilXToken.sol/VBep20Scenario.json +2 -2
- package/artifacts/contracts/test/InsufficientRepaymentFlashLoanReceiver.sol/InsufficientRepaymentFlashLoanReceiver.json +2 -2
- package/artifacts/contracts/test/LiquidatorHarness.sol/LiquidatorHarness.json +2 -2
- package/artifacts/contracts/test/MockFlashLoanReceiver.sol/MockFlashLoanReceiver.json +2 -2
- package/artifacts/contracts/test/MockVBNB.sol/MockVBNB.json +2 -2
- package/artifacts/contracts/test/PrimeScenario.sol/PrimeScenario.json +2 -2
- package/artifacts/contracts/test/SimplePriceOracle.sol/SimplePriceOracle.json +2 -2
- package/artifacts/contracts/test/VAIControllerHarness.sol/VAIControllerHarness.json +2 -2
- package/artifacts/contracts/test/VBep20Harness.sol/VBep20DelegateHarness.json +2 -2
- package/artifacts/contracts/test/VBep20Harness.sol/VBep20DelegateScenario.json +2 -2
- package/artifacts/contracts/test/VBep20Harness.sol/VBep20DelegateScenarioExtra.json +2 -2
- package/artifacts/contracts/test/VBep20Harness.sol/VBep20Harness.json +2 -2
- package/artifacts/contracts/test/VBep20Harness.sol/VBep20Scenario.json +2 -2
- package/artifacts/contracts/test/VBep20Harness.sol/VEvil.json +2 -2
- package/artifacts/contracts/test/VBep20MockDelegate.sol/VBep20MockDelegate.json +2 -2
- package/deployments/bscmainnet_addresses.json +8 -8
- package/deployments/bsctestnet_addresses.json +9 -9
- package/package.json +1 -1
|
@@ -533,6 +533,25 @@
|
|
|
533
533
|
"name": "NewComptrollerLens",
|
|
534
534
|
"type": "event"
|
|
535
535
|
},
|
|
536
|
+
{
|
|
537
|
+
"anonymous": false,
|
|
538
|
+
"inputs": [
|
|
539
|
+
{
|
|
540
|
+
"indexed": false,
|
|
541
|
+
"internalType": "contract IDeviationBoundedOracle",
|
|
542
|
+
"name": "oldDeviationBoundedOracle",
|
|
543
|
+
"type": "address"
|
|
544
|
+
},
|
|
545
|
+
{
|
|
546
|
+
"indexed": false,
|
|
547
|
+
"internalType": "contract IDeviationBoundedOracle",
|
|
548
|
+
"name": "newDeviationBoundedOracle",
|
|
549
|
+
"type": "address"
|
|
550
|
+
}
|
|
551
|
+
],
|
|
552
|
+
"name": "NewDeviationBoundedOracle",
|
|
553
|
+
"type": "event"
|
|
554
|
+
},
|
|
536
555
|
{
|
|
537
556
|
"anonymous": false,
|
|
538
557
|
"inputs": [
|
|
@@ -1524,6 +1543,19 @@
|
|
|
1524
1543
|
"stateMutability": "view",
|
|
1525
1544
|
"type": "function"
|
|
1526
1545
|
},
|
|
1546
|
+
{
|
|
1547
|
+
"inputs": [],
|
|
1548
|
+
"name": "deviationBoundedOracle",
|
|
1549
|
+
"outputs": [
|
|
1550
|
+
{
|
|
1551
|
+
"internalType": "contract IDeviationBoundedOracle",
|
|
1552
|
+
"name": "",
|
|
1553
|
+
"type": "address"
|
|
1554
|
+
}
|
|
1555
|
+
],
|
|
1556
|
+
"stateMutability": "view",
|
|
1557
|
+
"type": "function"
|
|
1558
|
+
},
|
|
1527
1559
|
{
|
|
1528
1560
|
"inputs": [],
|
|
1529
1561
|
"name": "flashLoanPaused",
|
|
@@ -1957,6 +1989,25 @@
|
|
|
1957
1989
|
"stateMutability": "nonpayable",
|
|
1958
1990
|
"type": "function"
|
|
1959
1991
|
},
|
|
1992
|
+
{
|
|
1993
|
+
"inputs": [
|
|
1994
|
+
{
|
|
1995
|
+
"internalType": "contract IDeviationBoundedOracle",
|
|
1996
|
+
"name": "newDeviationBoundedOracle",
|
|
1997
|
+
"type": "address"
|
|
1998
|
+
}
|
|
1999
|
+
],
|
|
2000
|
+
"name": "setDeviationBoundedOracle",
|
|
2001
|
+
"outputs": [
|
|
2002
|
+
{
|
|
2003
|
+
"internalType": "uint256",
|
|
2004
|
+
"name": "",
|
|
2005
|
+
"type": "uint256"
|
|
2006
|
+
}
|
|
2007
|
+
],
|
|
2008
|
+
"stateMutability": "nonpayable",
|
|
2009
|
+
"type": "function"
|
|
2010
|
+
},
|
|
1960
2011
|
{
|
|
1961
2012
|
"inputs": [
|
|
1962
2013
|
{
|
|
@@ -2512,8 +2563,8 @@
|
|
|
2512
2563
|
"type": "function"
|
|
2513
2564
|
}
|
|
2514
2565
|
],
|
|
2515
|
-
"bytecode": "0x6080604052348015600e575f80fd5b50613c658061001c5f395ff3fe608060405234801561000f575f80fd5b50600436106104bc575f3560e01c80637fb8e8cd11610279578063bec04f7211610156578063dce15449116100ca578063e87554461161008f578063e875544614610b9f578063f445d70314610ba8578063f519fc3014610bd5578063f851a44014610be8578063fa6331d814610bfa578063fd51a3ad14610c03575f80fd5b8063dce1544914610b0d578063dcfbc0c714610b20578063e0f6123d14610b33578063e37d4b7914610b55578063e85a296014610b8c575f80fd5b8063c7ee005e1161011b578063c7ee005e14610aba578063d136af441461072a578063d24febad14610acd578063d3270f9914610ae0578063d463654c14610af3578063d6ad5c3914610afa575f80fd5b8063bec04f7214610a5f578063bf32442d14610a68578063c32094c7146108e9578063c5b4db5514610a79578063c5f956af14610aa7575f80fd5b80639bd8f6e8116101ed578063b2eafc39116101b2578063b2eafc3914610999578063b8324c7c146109ac578063b88d846b14610a07578063bb82aa5e14610a1a578063bb85745014610a2d578063bbb8864a14610a40575f80fd5b80639bd8f6e81461093a5780639bf34cbb1461094d5780639cfdd9e614610960578063a657e57914610973578063a89766dd14610986575f80fd5b8063919a37361161023e578063919a3736146108c35780639254f5e5146108d65780639460c8b5146108e957806394b2294b146108fc57806396c99064146109055780639bb27d6214610927575f80fd5b80637fb8e8cd146108625780638a7dc1651461086f5780638b3113f61461073d5780638c1ac18a1461088e5780639159b177146108b0575f80fd5b806342adb211116103a75780635cc4fdeb1161031b578063719f701b116102e0578063719f701b146107ce57806373769099146107d757806376551383146108175780637938146f146108295780637d172bd51461083c5780637dc0d1d01461084f575f80fd5b80635cc4fdeb146107765780635dd3fc9d146107895780635f5af1aa146107a8578063607ef6c1146105935780636662c7c9146107bb575f80fd5b80634ef233fc1161036c5780634ef233fc1461071757806351a485e41461072a578063522c656b1461073d57806352d84d1e14610750578063530e784f1461076357806355ee1fe114610763575f80fd5b806342adb211146106ac5780634964f48c146106bf5780634a584432146106d25780634d99c776146106f15780634e0853db14610704575f80fd5b806324aaa2201161043e5780632ec04124116104035780632ec041241461063c578063317b0b771461056b578063354392401461064f5780634088c73e1461066257806341a18d2c1461066f578063425fad5814610699575f80fd5b806324aaa220146105e457806326782247146105f75780632a6a60651461060a5780632b5d790c146105e45780632bc7e29e1461061d575f80fd5b806312348e961161048457806312348e961461056b57806317db21631461057e578063186db48f1461059357806321af4569146105a657806324a3d622146105d1575f80fd5b806302c3bcbb146104c057806304ef9d58146104f257806308e0225c146104fb5780630db4b4e51461052557806310b983381461052e575b5f80fd5b6104df6104ce366004613144565b60276020525f908152604090205481565b6040519081526020015b60405180910390f35b6104df60225481565b6104df61050936600461315f565b601360209081525f928352604080842090915290825290205481565b6104df601d5481565b61055b61053c36600461315f565b602c60209081525f928352604080842090915290825290205460ff1681565b60405190151581526020016104e9565b6104df610579366004613196565b610c16565b61059161058c3660046131ba565b610c26565b005b6105916105a136600461324a565b610cda565b601e546105b9906001600160a01b031681565b6040516001600160a01b0390911681526020016104e9565b600a546105b9906001600160a01b031681565b6105916105f23660046132b1565b610d4b565b6001546105b9906001600160a01b031681565b61055b61061836600461332f565b610dbf565b6104df61062b366004613144565b60166020525f908152604090205481565b6104df61064a366004613196565b610e55565b6104df61065d366004613365565b610ed8565b60185461055b9060ff1681565b6104df61067d36600461315f565b601260209081525f928352604080842090915290825290205481565b60185461055b9062010000900460ff1681565b6105916106ba3660046133a1565b610f0f565b6105916106cd3660046133cd565b610fb7565b6104df6106e0366004613144565b601f6020525f908152604090205481565b6104df6106ff3660046133e7565b6110ec565b610591610712366004613401565b611109565b610591610725366004613144565b6111cc565b61059161073836600461324a565b6112fa565b61059161074b3660046133a1565b611365565b6105b961075e366004613196565b611373565b6104df610771366004613144565b61139b565b6104df610784366004613401565b6113a5565b6104df610797366004613144565b602b6020525f908152604090205481565b6104df6107b6366004613144565b6113d3565b6105916107c9366004613196565b61146a565b6104df601c5481565b6107ff6107e5366004613144565b60356020525f90815260409020546001600160601b031681565b6040516001600160601b0390911681526020016104e9565b60185461055b90610100900460ff1681565b6105916108373660046133cd565b6114f6565b601b546105b9906001600160a01b031681565b6004546105b9906001600160a01b031681565b60395461055b9060ff1681565b6104df61087d366004613144565b60146020525f908152604090205481565b61055b61089c366004613144565b602d6020525f908152604090205460ff1681565b6104df6108be366004613433565b61161d565b6105916108d1366004613144565b611656565b6015546105b9906001600160a01b031681565b6104df6108f7366004613144565b6116c2565b6104df60075481565b610918610913366004613474565b6116cc565b6040516104e9939291906134bb565b6025546105b9906001600160a01b031681565b6104df6109483660046134e4565b611779565b6104df61095b366004613144565b6117a6565b6104df61096e366004613144565b61183c565b6037546107ff906001600160601b031681565b61059161099436600461350e565b6118d3565b6020546105b9906001600160a01b031681565b6109e36109ba366004613144565b60106020525f90815260409020546001600160e01b03811690600160e01b900463ffffffff1682565b604080516001600160e01b03909316835263ffffffff9091166020830152016104e9565b610591610a15366004613529565b611a14565b6002546105b9906001600160a01b031681565b610591610a3b366004613144565b611b78565b6104df610a4e366004613144565b602a6020525f908152604090205481565b6104df60175481565b6033546001600160a01b03166105b9565b610a8f6ec097ce7bc90715b34b9f100000000081565b6040516001600160e01b0390911681526020016104e9565b6021546105b9906001600160a01b031681565b6031546105b9906001600160a01b031681565b6104df610adb3660046135a5565b611c0d565b6026546105b9906001600160a01b031681565b6107ff5f81565b610591610b0836600461332f565b611d74565b6105b9610b1b3660046134e4565b611e1d565b6003546105b9906001600160a01b031681565b61055b610b41366004613144565b60386020525f908152604090205460ff1681565b6109e3610b63366004613144565b60116020525f90815260409020546001600160e01b03811690600160e01b900463ffffffff1682565b61055b610b9a3660046135c2565b611e51565b6104df60055481565b61055b610bb636600461315f565b603260209081525f928352604080842090915290825290205460ff1681565b6104df610be3366004613144565b611e95565b5f546105b9906001600160a01b031681565b6104df601a5481565b6104df610c113660046134e4565b611f2c565b5f610c2082611fd0565b92915050565b610c47604051806060016040528060328152602001613a34603291396120aa565b6015546001600160a01b03838116911614610c6d57610c6d610c688361215a565b61217c565b6001600160a01b038381165f81815260326020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527fc080966e9e93529edc1b244180c245bc60f3d86f1e690a17651a5e428746a8cd91015b60405180910390a3505050565b610d458484808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250506040805160208088028281018201909352878252909350879250869182918501908490808284375f920191909152506121c192505050565b50505050565b610db88585808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250506040805160208089028281018201909352888252909350889250879182918501908490808284375f92019190915250869250612311915050565b5050505050565b5f610dfe6040518060400160405280601881526020017f5f73657450726f746f636f6c50617573656428626f6f6c2900000000000000008152506120aa565b60188054831515620100000262ff0000199091161790556040517fd7500633dd3ddd74daa7af62f8c8404c7fe4a81da179998db851696bed004b3890610e4990841515815260200190565b60405180910390a15090565b5f60175482808203610e825760405162461bcd60e51b8152600401610e79906135f1565b60405180910390fd5b610e8a6123a0565b601780549085905560408051828152602081018790527f73747d68b346dce1e932bcd238282e7ac84c01569e1f8d0469c222fdc6e9d5a491015b60405180910390a15f9350505b5050919050565b5f610efa6040518060600160405280602f8152602001613a8f602f91396120aa565b610f058484846123ec565b90505b9392505050565b610f306040518060600160405280602a8152602001613abe602a91396120aa565b610f398261253e565b6001600160a01b0382165f9081526038602052604090205481151560ff909116151503610f64575050565b6001600160a01b0382165f81815260386020526040808220805460ff191685151590811790915590519092917f1f4df5032f431b9890646a781be28b0d693e581666d1a80be27ae3959069172291a35050565b610ff56040518060400160405280601a81526020017f736574506f6f6c4163746976652875696e7439362c626f6f6c290000000000008152506120aa565b6037546001600160601b03908116908316111561103057604051632db8671b60e11b81526001600160601b0383166004820152602401610e79565b6001600160601b03821661105757604051630203217b60e61b815260040160405180910390fd5b6001600160601b0382165f908152603660205260409020600281015482151560ff90911615150361108757505050565b60028101546040805160ff9092161515825283151560208301526001600160601b038516917f75e42fceb039532886a9d75717e843bfef67fd7f6f91f0fc5b1d48e9ce8a1ba9910160405180910390a2600201805460ff191691151591909117905550565b6001600160a01b031660a09190911b6001600160a01b0319161790565b601b546001600160a01b039081169084908116820361113a5760405162461bcd60e51b8152600401610e799061363c565b6111426123a0565b61114b8561253e565b601b546001600160a01b0316156111645761116461258c565b601b80546001600160a01b0319166001600160a01b038716908117909155601c859055601d84905560408051868152602081018690527f7059037d74ee16b0fb06a4a30f3348dd2635f301f92e373c92899a25a522ef6e910160405180910390a25050505050565b6111d46123a0565b6111dd8161253e565b5f816001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa15801561121a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061123e919061367e565b6033549091506001600160a01b0380831691161461129e5760405162461bcd60e51b815260206004820152601a60248201527f696e76616c6964207876732076746f6b656e20616464726573730000000000006044820152606401610e79565b6034546040516001600160a01b038085169216907f2565e1579c0926afb7113edbfd85373e85cadaa3e0346f04de19686a2bb86ed1905f90a350603480546001600160a01b0319166001600160a01b0392909216919091179055565b610d458484808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250506040805160208088028281018201909352878252909350879250869182918501908490808284375f9201919091525061271b92505050565b61136f828261286b565b5050565b600d8181548110611382575f80fd5b5f918252602090912001546001600160a01b0316905081565b5f610c208261290b565b5f6113c76040518060600160405280602c8152602001613b34602c91396120aa565b610f055f8585856129a2565b600a545f906001600160a01b03908116908390811682036114065760405162461bcd60e51b8152600401610e799061363c565b61140e6123a0565b6114178461253e565b600a80546001600160a01b038681166001600160a01b03198316179092556040519116907f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e90610ec49083908890613699565b601a548180820361148d5760405162461bcd60e51b8152600401610e79906135f1565b6114956123a0565b601b546001600160a01b0316156114ae576114ae61258c565b601a80549084905560408051828152602081018690527fe81d4ac15e5afa1e708e66664eddc697177423d950d133bda8262d8885e6da3b91015b60405180910390a150505050565b611517604051806060016040528060258152602001613b89602591396120aa565b6037546001600160601b03908116908316111561155257604051632db8671b60e11b81526001600160601b0383166004820152602401610e79565b6001600160601b03821661157957604051630203217b60e61b815260040160405180910390fd5b6001600160601b0382165f908152603660205260409020600281015482151561010090910460ff161515036115ad57505050565b60028101546040805161010090920460ff161515825283151560208301526001600160601b038516917f9d2a9183b06e3492f91d3d88ae222e700c8873dd0068f9c3fc783eccb96a1ec4910160405180910390a260020180549115156101000261ff001990921691909117905550565b5f61163f604051806060016040528060338152602001613bae603391396120aa565b61164b858585856129a2565b90505b949350505050565b61165e6123a0565b6116678161253e565b6033546040516001600160a01b038084169216907ffe7fd0d872def0f65050e9f38fc6691d0c192c694a56f09b04bec5fb2ea61f2b905f90a3603380546001600160a01b0319166001600160a01b0392909216919091179055565b5f610c2082612bbf565b60366020525f90815260409020805481906116e6906136b3565b80601f0160208091040260200160405190810160405280929190818152602001828054611712906136b3565b801561175d5780601f106117345761010080835404028352916020019161175d565b820191905f5260205f20905b81548152906001019060200180831161174057829003601f168201915b5050506002909301549192505060ff8082169161010090041683565b5f61179b604051806060016040528060288152602001613be1602891396120aa565b610f085f84846123ec565b6026545f906001600160a01b03908116908390811682036117d95760405162461bcd60e51b8152600401610e799061363c565b6117e16123a0565b6117ea8461253e565b602680546001600160a01b038681166001600160a01b0319831681179093556040519116917f0f7eb572d1b3053a0a3a33c04151364cf88d163182a5e4e1088cb8e52321e08a91610ec4918491613699565b6015545f906001600160a01b039081169083908116820361186f5760405162461bcd60e51b8152600401610e799061363c565b6118776123a0565b6118808461253e565b601580546001600160a01b038681166001600160a01b03198316179092556040519116907fe1ddcb2dab8e5b03cfc8c67a0d5861d91d16f7bd2612fd381faf4541d212c9b290610ec49083908890613699565b6118f4604051806060016040528060278152602001613c09602791396120aa565b6037546001600160601b03908116908416111561192f57604051632db8671b60e11b81526001600160601b0384166004820152602401610e79565b5f61193a84846110ec565b5f81815260096020526040902080549192509060ff1661196d57604051630665210960e21b815260040160405180910390fd5b82151581600601600c9054906101000a900460ff16151503611990575050505050565b600681015460408051600160601b90920460ff161515825284151560208301526001600160a01b038616916001600160601b038816917fe40f9c4af130bdb5bd1650ab4bc918dba9d900fa94685f0113e72a6cfe6c5fcc910160405180910390a36006018054921515600160601b0260ff60601b1990931692909217909155505050565b611a526040518060400160405280601b81526020017f736574506f6f6c4c6162656c2875696e7439362c737472696e672900000000008152506120aa565b6037546001600160601b039081169084161115611a8d57604051632db8671b60e11b81526001600160601b0384166004820152602401610e79565b6001600160601b038316611ab457604051630203217b60e61b815260040160405180910390fd5b5f819003611ad55760405163522e397360e11b815260040160405180910390fd5b6001600160601b0383165f90815260366020526040908190209051611afd90849084906136eb565b60405190819003812090611b129083906136fa565b604051809103902003611b255750505050565b836001600160601b03167f1ebc260ee8077871ff0b70b184ff9dac4ecee8b0f7dcc4f3a3f5068549f5078e825f018585604051611b6493929190613794565b60405180910390a280610db883858361388b565b6025546001600160a01b0390811690829081168203611ba95760405162461bcd60e51b8152600401610e799061363c565b611bb16123a0565b611bba8361253e565b602580546001600160a01b038581166001600160a01b03198316179092556040519116907fa5ea5616d5f6dbbaa62fdfcf3856723216eed485c394d9e51ec8e6d40e1d1ac1906114e89083908790613699565b6020545f90611c24906001600160a01b0316612c34565b670de0b6b3a76400008210611c6d5760405162461bcd60e51b815260206004820152600f60248201526e70657263656e74203e3d203130302560881b6044820152606401610e79565b611c768461253e565b611c7f8361253e565b6020805460218054602280546001600160a01b03198086166001600160a01b038c8116919091179097558316898716179093558690556040519284169316917f29f06ea15931797ebaed313d81d100963dc22cb213cb4ce2737b5a62b1a8b1e890611ced9085908a90613699565b60405180910390a17f8de763046d7b8f08b6c3d03543de1d615309417842bb5d2d62f110f65809ddac8287604051611d26929190613699565b60405180910390a160408051828152602081018790527f0893f8f4101baaabbeb513f96761e7a36eb837403c82cc651c292a4abdc94ed7910160405180910390a15f5b979650505050505050565b611db26040518060400160405280601881526020017f736574466c6173684c6f616e50617573656428626f6f6c2900000000000000008152506120aa565b60395481151560ff909116151503611dc75750565b6039546040805160ff9092161515825282151560208301527f79bcfb2700d56371c7684799f99d64cbcd91f1e360f8048a42c9ba534be7c0a8910160405180910390a16039805460ff1916911515919091179055565b6008602052815f5260405f208181548110611e36575f80fd5b5f918252602090912001546001600160a01b03169150829050565b6001600160a01b0382165f90815260296020526040812081836008811115611e7b57611e7b613628565b815260208101919091526040015f205460ff169392505050565b6028545f906001600160a01b0390811690839081168203611ec85760405162461bcd60e51b8152600401610e799061363c565b611ed06123a0565b611ed98461253e565b602880546001600160a01b038681166001600160a01b03198316179092556040519116907f0f1eca7612e020f6e4582bcead0573eba4b5f7b56668754c6aed82ef12057dd490610ec49083908890613699565b5f611f35612c8f565b60185460ff16158015611f505750601854610100900460ff16155b611f8c5760405162461bcd60e51b815260206004820152600d60248201526c159052481a5cc81c185d5cd959609a1b6044820152606401610e79565b6015546001600160a01b03163314611fb157611faa600e6016612cdd565b9050610c20565b6001600160a01b0383165f908152601660205260408120839055610f08565b5f60055482808203611ff45760405162461bcd60e51b8152600401610e79906135f1565b611ffc6123a0565b604080516020808201835286825282518082018452670c7d713b49da00008152835191820190935266b1a2bc2ec500008152815183519293921080612042575082518151115b1561205c57612052600580612cdd565b9550505050610ed1565b600580549088905560408051828152602081018a90527f3b9670cf975d26958e754b57098eaa2ac914d8d2a31b83257997b9f346110fd9910160405180910390a15f98975050505050505050565b6028546040516318c5e8ab60e01b81526001600160a01b03909116906318c5e8ab906120dc9033908590600401613945565b602060405180830381865afa1580156120f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061211b9190613968565b6121575760405162461bcd60e51b815260206004820152600d60248201526c1858d8d95cdcc819195b9a5959609a1b6044820152606401610e79565b50565b5f60095f6121685f856110ec565b81526020019081526020015f209050919050565b805460ff166121575760405162461bcd60e51b81526020600482015260116024820152701b585c9ad95d081b9bdd081b1a5cdd1959607a1b6044820152606401610e79565b6121e2604051806060016040528060298152602001613b60602991396120aa565b8151815181158015906121f457508082145b6122305760405162461bcd60e51b815260206004820152600d60248201526c1a5b9d985b1a59081a5b9c1d5d609a1b6044820152606401610e79565b5f5b82811015610db85783818151811061224c5761224c613983565b6020026020010151601f5f87848151811061226957612269613983565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f20819055508481815181106122a6576122a6613983565b60200260200101516001600160a01b03167f6f1951b2aad10f3fc81b86d91105b413a5b3f847a34bbc5ce1904201b14438f68583815181106122ea576122ea613983565b602002602001015160405161230191815260200190565b60405180910390a2600101612232565b612332604051806060016040528060298152602001613a66602991396120aa565b825182515f5b82811015612398575f5b8281101561238f5761238787838151811061235f5761235f613983565b602002602001015187838151811061237957612379613983565b602002602001015187612d54565b600101612342565b50600101612338565b505050505050565b5f546001600160a01b031633146123ea5760405162461bcd60e51b815260206004820152600e60248201526d37b7363c9030b236b4b71031b0b760911b6044820152606401610e79565b565b5f60095f6123fa86866110ec565b81526020019081526020015f20600501548280820361242b5760405162461bcd60e51b8152600401610e79906135f1565b6037546001600160601b03908116908716111561246657604051632db8671b60e11b81526001600160601b0387166004820152602401610e79565b5f60095f61247489896110ec565b81526020019081526020015f20905061248c8161217c565b670de0b6b3a76400008510156124d75760405162461bcd60e51b815260206004820152601060248201526f0d2dcc6cadce8d2ecca40784062ca62760831b6044820152606401610e79565b856001600160a01b0316876001600160601b03167fc1d7bc090f3a87255c2f4e56f66d1b7a49683d279f77921b1701aa5d733ef745836005015488604051612529929190918252602082015260400190565b60405180910390a3600581018590555f611d69565b6001600160a01b0381166121575760405162461bcd60e51b815260206004820152601560248201527463616e2774206265207a65726f206164647265737360581b6044820152606401610e79565b601c54158061259c5750601c5443105b156125a357565b6033546040516370a0823160e01b81523060048201526001600160a01b03909116905f9082906370a0823190602401602060405180830381865afa1580156125ed573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906126119190613997565b9050805f0361261e575050565b5f8061262c43601c54612df8565b90505f61263b601a5483612e31565b905080841061264c57809250612650565b8392505b601d54831015612661575050505050565b43601c55601b5461267f906001600160a01b03878116911685612e72565b6040518381527ff6d4b8f74d85a6e2d7a50225957b8a6cfec69ad92f5905627260541aa0a5565d9060200160405180910390a1601b5f9054906101000a90046001600160a01b03166001600160a01b031663faa1809e6040518163ffffffff1660e01b81526004015f604051808303815f87803b1580156126fe575f80fd5b505af1158015612710573d5f803e3d5ffd5b505050505050505050565b61273c604051806060016040528060298152602001613ae8602991396120aa565b81518151811580159061274e57508082145b61278a5760405162461bcd60e51b815260206004820152600d60248201526c1a5b9d985b1a59081a5b9c1d5d609a1b6044820152606401610e79565b5f5b82811015610db8578381815181106127a6576127a6613983565b602002602001015160275f8784815181106127c3576127c3613983565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f208190555084818151811061280057612800613983565b60200260200101516001600160a01b03167f9e0ad9cee10bdf36b7fbd38910c0bdff0f275ace679b45b922381c2723d676f885838151811061284457612844613983565b602002602001015160405161285b91815260200190565b60405180910390a260010161278c565b61288c604051806060016040528060238152602001613b11602391396120aa565b6015546001600160a01b038381169116146128ad576128ad610c688361215a565b6001600160a01b0382165f818152602d6020908152604091829020805460ff191685151590811790915591519182527f03561d5280ebb02280893b1d60978e4a27e7654a149c5d0e7c2cf65389ce1694910160405180910390a25050565b6004545f906001600160a01b039081169083908116820361293e5760405162461bcd60e51b8152600401610e799061363c565b6129466123a0565b61294f8461253e565b600480546001600160a01b038681166001600160a01b03198316179092556040519116907fd52b2b9b7e9ee655fcb95d2e5b9e0c9f69e7ef2b8e9d2d0ea78402d576d22e2290610ec49083908890613699565b5f6129ac8461253e565b6037546001600160601b0390811690861611156129e757604051632db8671b60e11b81526001600160601b0386166004820152602401610e79565b5f60095f6129f588886110ec565b81526020019081526020015f209050612a0d8161217c565b670de0b6b3a7640000841115612a3157612a2960066008612cdd565b91505061164e565b8315801590612aab57506004805460405163fc57d4df60e01b81526001600160a01b038881169382019390935291169063fc57d4df90602401602060405180830381865afa158015612a85573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612aa99190613997565b155b15612abc57612a29600d6009612cdd565b670de0b6b3a7640000831115612ad857612a2960146019612cdd565b83831015612aec57612a296014601a612cdd565b6001810154848114612b4f576001820185905560408051828152602081018790526001600160a01b038816916001600160601b038a16917f0d1a615379dc62cec7bc63b7e313a07ed659918f4ad3720b3af8041b305146f2910160405180910390a35b6004820154848114612bb2576004830185905560408051828152602081018790526001600160a01b038916916001600160601b038b16917fc90f7b48c299a8d58b0b9e2756e27773c6fb1daab159af052d6c5b791bc7eef7910160405180910390a35b5f98975050505050505050565b5f612bc86123a0565b612bd18261253e565b603180546001600160a01b038481166001600160a01b03198316179092556040519116907fcb20dab7409e4fb972d9adccb39530520b226ce6940d85c9523a499b950b6ea390612c249083908690613699565b60405180910390a15f9392505050565b5f546001600160a01b031633148061211b5750336001600160a01b038216146121575760405162461bcd60e51b815260206004820152600d60248201526c1858d8d95cdcc819195b9a5959609a1b6044820152606401610e79565b60185462010000900460ff16156123ea5760405162461bcd60e51b81526020600482015260126024820152711c1c9bdd1bd8dbdb081a5cc81c185d5cd95960721b6044820152606401610e79565b5f7f45b96fe442630264581b197e84bbada861235052c5a1aadfff9ea4e40a969aa0836014811115612d1157612d11613628565b83601a811115612d2357612d23613628565b6040805192835260208301919091525f9082015260600160405180910390a1826014811115610f0857610f08613628565b612d60610c688461215a565b6001600160a01b0383165f9081526029602052604081208291846008811115612d8b57612d8b613628565b815260208101919091526040015f20805460ff1916911515919091179055816008811115612dbb57612dbb613628565b836001600160a01b03167f35007a986bcd36d2f73fc7f1b73762e12eadb4406dd163194950fd3b5a6a827d83604051610ccd911515815260200190565b5f610f088383604051806040016040528060158152602001747375627472616374696f6e20756e646572666c6f7760581b815250612ec9565b5f610f0883836040518060400160405280601781526020017f6d756c7469706c69636174696f6e206f766572666c6f77000000000000000000815250612ef7565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052612ec4908490612f50565b505050565b5f8184841115612eec5760405162461bcd60e51b8152600401610e7991906139ae565b50610f0583856139d4565b5f831580612f03575082155b15612f0f57505f610f08565b5f612f1a84866139e7565b905083612f2786836139fe565b148390612f475760405162461bcd60e51b8152600401610e7991906139ae565b50949350505050565b5f612fa4826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166130239092919063ffffffff16565b905080515f1480612fc4575080806020019051810190612fc49190613968565b612ec45760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610e79565b6060610f0584845f85855f80866001600160a01b031685876040516130489190613a1d565b5f6040518083038185875af1925050503d805f8114613082576040519150601f19603f3d011682016040523d82523d5f602084013e613087565b606091505b5091509150611d6987838387606083156131015782515f036130fa576001600160a01b0385163b6130fa5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610e79565b508161164e565b61164e83838151156131165781518083602001fd5b8060405162461bcd60e51b8152600401610e7991906139ae565b6001600160a01b0381168114612157575f80fd5b5f60208284031215613154575f80fd5b8135610f0881613130565b5f8060408385031215613170575f80fd5b823561317b81613130565b9150602083013561318b81613130565b809150509250929050565b5f602082840312156131a6575f80fd5b5035919050565b8015158114612157575f80fd5b5f805f606084860312156131cc575f80fd5b83356131d781613130565b925060208401356131e781613130565b915060408401356131f7816131ad565b809150509250925092565b5f8083601f840112613212575f80fd5b50813567ffffffffffffffff811115613229575f80fd5b6020830191508360208260051b8501011115613243575f80fd5b9250929050565b5f805f806040858703121561325d575f80fd5b843567ffffffffffffffff80821115613274575f80fd5b61328088838901613202565b90965094506020870135915080821115613298575f80fd5b506132a587828801613202565b95989497509550505050565b5f805f805f606086880312156132c5575f80fd5b853567ffffffffffffffff808211156132dc575f80fd5b6132e889838a01613202565b90975095506020880135915080821115613300575f80fd5b5061330d88828901613202565b9094509250506040860135613321816131ad565b809150509295509295909350565b5f6020828403121561333f575f80fd5b8135610f08816131ad565b80356001600160601b0381168114613360575f80fd5b919050565b5f805f60608486031215613377575f80fd5b6133808461334a565b9250602084013561339081613130565b929592945050506040919091013590565b5f80604083850312156133b2575f80fd5b82356133bd81613130565b9150602083013561318b816131ad565b5f80604083850312156133de575f80fd5b6133bd8361334a565b5f80604083850312156133f8575f80fd5b61317b8361334a565b5f805f60608486031215613413575f80fd5b833561341e81613130565b95602085013595506040909401359392505050565b5f805f8060808587031215613446575f80fd5b61344f8561334a565b9350602085013561345f81613130565b93969395505050506040820135916060013590565b5f60208284031215613484575f80fd5b610f088261334a565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b606081525f6134cd606083018661348d565b931515602083015250901515604090910152919050565b5f80604083850312156134f5575f80fd5b823561350081613130565b946020939093013593505050565b5f805f60608486031215613520575f80fd5b6131d78461334a565b5f805f6040848603121561353b575f80fd5b6135448461334a565b9250602084013567ffffffffffffffff80821115613560575f80fd5b818601915086601f830112613573575f80fd5b813581811115613581575f80fd5b876020828501011115613592575f80fd5b6020830194508093505050509250925092565b5f805f606084860312156135b7575f80fd5b833561338081613130565b5f80604083850312156135d3575f80fd5b82356135de81613130565b915060208301356009811061318b575f80fd5b6020808252601e908201527f6f6c642076616c75652069732073616d65206173206e65772076616c75650000604082015260600190565b634e487b7160e01b5f52602160045260245ffd5b60208082526022908201527f6f6c6420616464726573732069732073616d65206173206e6577206164647265604082015261737360f01b606082015260800190565b5f6020828403121561368e575f80fd5b8151610f0881613130565b6001600160a01b0392831681529116602082015260400190565b600181811c908216806136c757607f821691505b6020821081036136e557634e487b7160e01b5f52602260045260245ffd5b50919050565b818382375f9101908152919050565b5f808354613707816136b3565b6001828116801561371f576001811461373457613760565b60ff1984168752821515830287019450613760565b875f526020805f205f5b858110156137575781548a82015290840190820161373e565b50505082870194505b50929695505050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f8085546137a5816136b3565b806040860152606060018084165f81146137c657600181146137e257613811565b60ff1985166060890152606084151560051b8901019550613811565b8a5f526020805f205f5b868110156138075781548b82018701529084019082016137ec565b8a01606001975050505b5050505050828103602084015261382981858761376c565b9695505050505050565b634e487b7160e01b5f52604160045260245ffd5b601f821115612ec457805f5260205f20601f840160051c8101602085101561386c5750805b601f840160051c820191505b81811015610db8575f8155600101613878565b67ffffffffffffffff8311156138a3576138a3613833565b6138b7836138b183546136b3565b83613847565b5f601f8411600181146138e8575f85156138d15750838201355b5f19600387901b1c1916600186901b178355610db8565b5f83815260208120601f198716915b8281101561391757868501358255602094850194600190920191016138f7565b5086821015613933575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160a01b03831681526040602082018190525f90610f059083018461348d565b5f60208284031215613978575f80fd5b8151610f08816131ad565b634e487b7160e01b5f52603260045260245ffd5b5f602082840312156139a7575f80fd5b5051919050565b602081525f610f08602083018461348d565b634e487b7160e01b5f52601160045260245ffd5b81810381811115610c2057610c206139c0565b8082028115828204841417610c2057610c206139c0565b5f82613a1857634e487b7160e01b5f52601260045260245ffd5b500490565b5f82518060208501845e5f92019182525091905056fe5f736574466f726365644c69717569646174696f6e466f725573657228616464726573732c616464726573732c626f6f6c295f736574416374696f6e7350617573656428616464726573735b5d2c75696e74385b5d2c626f6f6c297365744c69717569646174696f6e496e63656e746976652875696e7439362c616464726573732c75696e743235362973657457686974654c697374466c6173684c6f616e4163636f756e7428616464726573732c626f6f6c295f7365744d61726b6574537570706c794361707328616464726573735b5d2c75696e743235365b5d295f736574466f726365644c69717569646174696f6e28616464726573732c626f6f6c29736574436f6c6c61746572616c466163746f7228616464726573732c75696e743235362c75696e74323536295f7365744d61726b6574426f72726f774361707328616464726573735b5d2c75696e743235365b5d29736574416c6c6f77436f7265506f6f6c46616c6c6261636b2875696e7439362c626f6f6c29736574436f6c6c61746572616c466163746f722875696e7439362c616464726573732c75696e743235362c75696e74323536297365744c69717569646174696f6e496e63656e7469766528616464726573732c75696e74323536297365744973426f72726f77416c6c6f7765642875696e7439362c616464726573732c626f6f6c29a2646970667358221220848be49d31816fdf220cfa5f584074f3f583a7247c2cb8fb154a92ab79f8595d64736f6c63430008190033",
|
|
2516
|
-
"deployedBytecode": "0x608060405234801561000f575f80fd5b50600436106104bc575f3560e01c80637fb8e8cd11610279578063bec04f7211610156578063dce15449116100ca578063e87554461161008f578063e875544614610b9f578063f445d70314610ba8578063f519fc3014610bd5578063f851a44014610be8578063fa6331d814610bfa578063fd51a3ad14610c03575f80fd5b8063dce1544914610b0d578063dcfbc0c714610b20578063e0f6123d14610b33578063e37d4b7914610b55578063e85a296014610b8c575f80fd5b8063c7ee005e1161011b578063c7ee005e14610aba578063d136af441461072a578063d24febad14610acd578063d3270f9914610ae0578063d463654c14610af3578063d6ad5c3914610afa575f80fd5b8063bec04f7214610a5f578063bf32442d14610a68578063c32094c7146108e9578063c5b4db5514610a79578063c5f956af14610aa7575f80fd5b80639bd8f6e8116101ed578063b2eafc39116101b2578063b2eafc3914610999578063b8324c7c146109ac578063b88d846b14610a07578063bb82aa5e14610a1a578063bb85745014610a2d578063bbb8864a14610a40575f80fd5b80639bd8f6e81461093a5780639bf34cbb1461094d5780639cfdd9e614610960578063a657e57914610973578063a89766dd14610986575f80fd5b8063919a37361161023e578063919a3736146108c35780639254f5e5146108d65780639460c8b5146108e957806394b2294b146108fc57806396c99064146109055780639bb27d6214610927575f80fd5b80637fb8e8cd146108625780638a7dc1651461086f5780638b3113f61461073d5780638c1ac18a1461088e5780639159b177146108b0575f80fd5b806342adb211116103a75780635cc4fdeb1161031b578063719f701b116102e0578063719f701b146107ce57806373769099146107d757806376551383146108175780637938146f146108295780637d172bd51461083c5780637dc0d1d01461084f575f80fd5b80635cc4fdeb146107765780635dd3fc9d146107895780635f5af1aa146107a8578063607ef6c1146105935780636662c7c9146107bb575f80fd5b80634ef233fc1161036c5780634ef233fc1461071757806351a485e41461072a578063522c656b1461073d57806352d84d1e14610750578063530e784f1461076357806355ee1fe114610763575f80fd5b806342adb211146106ac5780634964f48c146106bf5780634a584432146106d25780634d99c776146106f15780634e0853db14610704575f80fd5b806324aaa2201161043e5780632ec04124116104035780632ec041241461063c578063317b0b771461056b578063354392401461064f5780634088c73e1461066257806341a18d2c1461066f578063425fad5814610699575f80fd5b806324aaa220146105e457806326782247146105f75780632a6a60651461060a5780632b5d790c146105e45780632bc7e29e1461061d575f80fd5b806312348e961161048457806312348e961461056b57806317db21631461057e578063186db48f1461059357806321af4569146105a657806324a3d622146105d1575f80fd5b806302c3bcbb146104c057806304ef9d58146104f257806308e0225c146104fb5780630db4b4e51461052557806310b983381461052e575b5f80fd5b6104df6104ce366004613144565b60276020525f908152604090205481565b6040519081526020015b60405180910390f35b6104df60225481565b6104df61050936600461315f565b601360209081525f928352604080842090915290825290205481565b6104df601d5481565b61055b61053c36600461315f565b602c60209081525f928352604080842090915290825290205460ff1681565b60405190151581526020016104e9565b6104df610579366004613196565b610c16565b61059161058c3660046131ba565b610c26565b005b6105916105a136600461324a565b610cda565b601e546105b9906001600160a01b031681565b6040516001600160a01b0390911681526020016104e9565b600a546105b9906001600160a01b031681565b6105916105f23660046132b1565b610d4b565b6001546105b9906001600160a01b031681565b61055b61061836600461332f565b610dbf565b6104df61062b366004613144565b60166020525f908152604090205481565b6104df61064a366004613196565b610e55565b6104df61065d366004613365565b610ed8565b60185461055b9060ff1681565b6104df61067d36600461315f565b601260209081525f928352604080842090915290825290205481565b60185461055b9062010000900460ff1681565b6105916106ba3660046133a1565b610f0f565b6105916106cd3660046133cd565b610fb7565b6104df6106e0366004613144565b601f6020525f908152604090205481565b6104df6106ff3660046133e7565b6110ec565b610591610712366004613401565b611109565b610591610725366004613144565b6111cc565b61059161073836600461324a565b6112fa565b61059161074b3660046133a1565b611365565b6105b961075e366004613196565b611373565b6104df610771366004613144565b61139b565b6104df610784366004613401565b6113a5565b6104df610797366004613144565b602b6020525f908152604090205481565b6104df6107b6366004613144565b6113d3565b6105916107c9366004613196565b61146a565b6104df601c5481565b6107ff6107e5366004613144565b60356020525f90815260409020546001600160601b031681565b6040516001600160601b0390911681526020016104e9565b60185461055b90610100900460ff1681565b6105916108373660046133cd565b6114f6565b601b546105b9906001600160a01b031681565b6004546105b9906001600160a01b031681565b60395461055b9060ff1681565b6104df61087d366004613144565b60146020525f908152604090205481565b61055b61089c366004613144565b602d6020525f908152604090205460ff1681565b6104df6108be366004613433565b61161d565b6105916108d1366004613144565b611656565b6015546105b9906001600160a01b031681565b6104df6108f7366004613144565b6116c2565b6104df60075481565b610918610913366004613474565b6116cc565b6040516104e9939291906134bb565b6025546105b9906001600160a01b031681565b6104df6109483660046134e4565b611779565b6104df61095b366004613144565b6117a6565b6104df61096e366004613144565b61183c565b6037546107ff906001600160601b031681565b61059161099436600461350e565b6118d3565b6020546105b9906001600160a01b031681565b6109e36109ba366004613144565b60106020525f90815260409020546001600160e01b03811690600160e01b900463ffffffff1682565b604080516001600160e01b03909316835263ffffffff9091166020830152016104e9565b610591610a15366004613529565b611a14565b6002546105b9906001600160a01b031681565b610591610a3b366004613144565b611b78565b6104df610a4e366004613144565b602a6020525f908152604090205481565b6104df60175481565b6033546001600160a01b03166105b9565b610a8f6ec097ce7bc90715b34b9f100000000081565b6040516001600160e01b0390911681526020016104e9565b6021546105b9906001600160a01b031681565b6031546105b9906001600160a01b031681565b6104df610adb3660046135a5565b611c0d565b6026546105b9906001600160a01b031681565b6107ff5f81565b610591610b0836600461332f565b611d74565b6105b9610b1b3660046134e4565b611e1d565b6003546105b9906001600160a01b031681565b61055b610b41366004613144565b60386020525f908152604090205460ff1681565b6109e3610b63366004613144565b60116020525f90815260409020546001600160e01b03811690600160e01b900463ffffffff1682565b61055b610b9a3660046135c2565b611e51565b6104df60055481565b61055b610bb636600461315f565b603260209081525f928352604080842090915290825290205460ff1681565b6104df610be3366004613144565b611e95565b5f546105b9906001600160a01b031681565b6104df601a5481565b6104df610c113660046134e4565b611f2c565b5f610c2082611fd0565b92915050565b610c47604051806060016040528060328152602001613a34603291396120aa565b6015546001600160a01b03838116911614610c6d57610c6d610c688361215a565b61217c565b6001600160a01b038381165f81815260326020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527fc080966e9e93529edc1b244180c245bc60f3d86f1e690a17651a5e428746a8cd91015b60405180910390a3505050565b610d458484808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250506040805160208088028281018201909352878252909350879250869182918501908490808284375f920191909152506121c192505050565b50505050565b610db88585808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250506040805160208089028281018201909352888252909350889250879182918501908490808284375f92019190915250869250612311915050565b5050505050565b5f610dfe6040518060400160405280601881526020017f5f73657450726f746f636f6c50617573656428626f6f6c2900000000000000008152506120aa565b60188054831515620100000262ff0000199091161790556040517fd7500633dd3ddd74daa7af62f8c8404c7fe4a81da179998db851696bed004b3890610e4990841515815260200190565b60405180910390a15090565b5f60175482808203610e825760405162461bcd60e51b8152600401610e79906135f1565b60405180910390fd5b610e8a6123a0565b601780549085905560408051828152602081018790527f73747d68b346dce1e932bcd238282e7ac84c01569e1f8d0469c222fdc6e9d5a491015b60405180910390a15f9350505b5050919050565b5f610efa6040518060600160405280602f8152602001613a8f602f91396120aa565b610f058484846123ec565b90505b9392505050565b610f306040518060600160405280602a8152602001613abe602a91396120aa565b610f398261253e565b6001600160a01b0382165f9081526038602052604090205481151560ff909116151503610f64575050565b6001600160a01b0382165f81815260386020526040808220805460ff191685151590811790915590519092917f1f4df5032f431b9890646a781be28b0d693e581666d1a80be27ae3959069172291a35050565b610ff56040518060400160405280601a81526020017f736574506f6f6c4163746976652875696e7439362c626f6f6c290000000000008152506120aa565b6037546001600160601b03908116908316111561103057604051632db8671b60e11b81526001600160601b0383166004820152602401610e79565b6001600160601b03821661105757604051630203217b60e61b815260040160405180910390fd5b6001600160601b0382165f908152603660205260409020600281015482151560ff90911615150361108757505050565b60028101546040805160ff9092161515825283151560208301526001600160601b038516917f75e42fceb039532886a9d75717e843bfef67fd7f6f91f0fc5b1d48e9ce8a1ba9910160405180910390a2600201805460ff191691151591909117905550565b6001600160a01b031660a09190911b6001600160a01b0319161790565b601b546001600160a01b039081169084908116820361113a5760405162461bcd60e51b8152600401610e799061363c565b6111426123a0565b61114b8561253e565b601b546001600160a01b0316156111645761116461258c565b601b80546001600160a01b0319166001600160a01b038716908117909155601c859055601d84905560408051868152602081018690527f7059037d74ee16b0fb06a4a30f3348dd2635f301f92e373c92899a25a522ef6e910160405180910390a25050505050565b6111d46123a0565b6111dd8161253e565b5f816001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa15801561121a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061123e919061367e565b6033549091506001600160a01b0380831691161461129e5760405162461bcd60e51b815260206004820152601a60248201527f696e76616c6964207876732076746f6b656e20616464726573730000000000006044820152606401610e79565b6034546040516001600160a01b038085169216907f2565e1579c0926afb7113edbfd85373e85cadaa3e0346f04de19686a2bb86ed1905f90a350603480546001600160a01b0319166001600160a01b0392909216919091179055565b610d458484808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250506040805160208088028281018201909352878252909350879250869182918501908490808284375f9201919091525061271b92505050565b61136f828261286b565b5050565b600d8181548110611382575f80fd5b5f918252602090912001546001600160a01b0316905081565b5f610c208261290b565b5f6113c76040518060600160405280602c8152602001613b34602c91396120aa565b610f055f8585856129a2565b600a545f906001600160a01b03908116908390811682036114065760405162461bcd60e51b8152600401610e799061363c565b61140e6123a0565b6114178461253e565b600a80546001600160a01b038681166001600160a01b03198316179092556040519116907f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e90610ec49083908890613699565b601a548180820361148d5760405162461bcd60e51b8152600401610e79906135f1565b6114956123a0565b601b546001600160a01b0316156114ae576114ae61258c565b601a80549084905560408051828152602081018690527fe81d4ac15e5afa1e708e66664eddc697177423d950d133bda8262d8885e6da3b91015b60405180910390a150505050565b611517604051806060016040528060258152602001613b89602591396120aa565b6037546001600160601b03908116908316111561155257604051632db8671b60e11b81526001600160601b0383166004820152602401610e79565b6001600160601b03821661157957604051630203217b60e61b815260040160405180910390fd5b6001600160601b0382165f908152603660205260409020600281015482151561010090910460ff161515036115ad57505050565b60028101546040805161010090920460ff161515825283151560208301526001600160601b038516917f9d2a9183b06e3492f91d3d88ae222e700c8873dd0068f9c3fc783eccb96a1ec4910160405180910390a260020180549115156101000261ff001990921691909117905550565b5f61163f604051806060016040528060338152602001613bae603391396120aa565b61164b858585856129a2565b90505b949350505050565b61165e6123a0565b6116678161253e565b6033546040516001600160a01b038084169216907ffe7fd0d872def0f65050e9f38fc6691d0c192c694a56f09b04bec5fb2ea61f2b905f90a3603380546001600160a01b0319166001600160a01b0392909216919091179055565b5f610c2082612bbf565b60366020525f90815260409020805481906116e6906136b3565b80601f0160208091040260200160405190810160405280929190818152602001828054611712906136b3565b801561175d5780601f106117345761010080835404028352916020019161175d565b820191905f5260205f20905b81548152906001019060200180831161174057829003601f168201915b5050506002909301549192505060ff8082169161010090041683565b5f61179b604051806060016040528060288152602001613be1602891396120aa565b610f085f84846123ec565b6026545f906001600160a01b03908116908390811682036117d95760405162461bcd60e51b8152600401610e799061363c565b6117e16123a0565b6117ea8461253e565b602680546001600160a01b038681166001600160a01b0319831681179093556040519116917f0f7eb572d1b3053a0a3a33c04151364cf88d163182a5e4e1088cb8e52321e08a91610ec4918491613699565b6015545f906001600160a01b039081169083908116820361186f5760405162461bcd60e51b8152600401610e799061363c565b6118776123a0565b6118808461253e565b601580546001600160a01b038681166001600160a01b03198316179092556040519116907fe1ddcb2dab8e5b03cfc8c67a0d5861d91d16f7bd2612fd381faf4541d212c9b290610ec49083908890613699565b6118f4604051806060016040528060278152602001613c09602791396120aa565b6037546001600160601b03908116908416111561192f57604051632db8671b60e11b81526001600160601b0384166004820152602401610e79565b5f61193a84846110ec565b5f81815260096020526040902080549192509060ff1661196d57604051630665210960e21b815260040160405180910390fd5b82151581600601600c9054906101000a900460ff16151503611990575050505050565b600681015460408051600160601b90920460ff161515825284151560208301526001600160a01b038616916001600160601b038816917fe40f9c4af130bdb5bd1650ab4bc918dba9d900fa94685f0113e72a6cfe6c5fcc910160405180910390a36006018054921515600160601b0260ff60601b1990931692909217909155505050565b611a526040518060400160405280601b81526020017f736574506f6f6c4c6162656c2875696e7439362c737472696e672900000000008152506120aa565b6037546001600160601b039081169084161115611a8d57604051632db8671b60e11b81526001600160601b0384166004820152602401610e79565b6001600160601b038316611ab457604051630203217b60e61b815260040160405180910390fd5b5f819003611ad55760405163522e397360e11b815260040160405180910390fd5b6001600160601b0383165f90815260366020526040908190209051611afd90849084906136eb565b60405190819003812090611b129083906136fa565b604051809103902003611b255750505050565b836001600160601b03167f1ebc260ee8077871ff0b70b184ff9dac4ecee8b0f7dcc4f3a3f5068549f5078e825f018585604051611b6493929190613794565b60405180910390a280610db883858361388b565b6025546001600160a01b0390811690829081168203611ba95760405162461bcd60e51b8152600401610e799061363c565b611bb16123a0565b611bba8361253e565b602580546001600160a01b038581166001600160a01b03198316179092556040519116907fa5ea5616d5f6dbbaa62fdfcf3856723216eed485c394d9e51ec8e6d40e1d1ac1906114e89083908790613699565b6020545f90611c24906001600160a01b0316612c34565b670de0b6b3a76400008210611c6d5760405162461bcd60e51b815260206004820152600f60248201526e70657263656e74203e3d203130302560881b6044820152606401610e79565b611c768461253e565b611c7f8361253e565b6020805460218054602280546001600160a01b03198086166001600160a01b038c8116919091179097558316898716179093558690556040519284169316917f29f06ea15931797ebaed313d81d100963dc22cb213cb4ce2737b5a62b1a8b1e890611ced9085908a90613699565b60405180910390a17f8de763046d7b8f08b6c3d03543de1d615309417842bb5d2d62f110f65809ddac8287604051611d26929190613699565b60405180910390a160408051828152602081018790527f0893f8f4101baaabbeb513f96761e7a36eb837403c82cc651c292a4abdc94ed7910160405180910390a15f5b979650505050505050565b611db26040518060400160405280601881526020017f736574466c6173684c6f616e50617573656428626f6f6c2900000000000000008152506120aa565b60395481151560ff909116151503611dc75750565b6039546040805160ff9092161515825282151560208301527f79bcfb2700d56371c7684799f99d64cbcd91f1e360f8048a42c9ba534be7c0a8910160405180910390a16039805460ff1916911515919091179055565b6008602052815f5260405f208181548110611e36575f80fd5b5f918252602090912001546001600160a01b03169150829050565b6001600160a01b0382165f90815260296020526040812081836008811115611e7b57611e7b613628565b815260208101919091526040015f205460ff169392505050565b6028545f906001600160a01b0390811690839081168203611ec85760405162461bcd60e51b8152600401610e799061363c565b611ed06123a0565b611ed98461253e565b602880546001600160a01b038681166001600160a01b03198316179092556040519116907f0f1eca7612e020f6e4582bcead0573eba4b5f7b56668754c6aed82ef12057dd490610ec49083908890613699565b5f611f35612c8f565b60185460ff16158015611f505750601854610100900460ff16155b611f8c5760405162461bcd60e51b815260206004820152600d60248201526c159052481a5cc81c185d5cd959609a1b6044820152606401610e79565b6015546001600160a01b03163314611fb157611faa600e6016612cdd565b9050610c20565b6001600160a01b0383165f908152601660205260408120839055610f08565b5f60055482808203611ff45760405162461bcd60e51b8152600401610e79906135f1565b611ffc6123a0565b604080516020808201835286825282518082018452670c7d713b49da00008152835191820190935266b1a2bc2ec500008152815183519293921080612042575082518151115b1561205c57612052600580612cdd565b9550505050610ed1565b600580549088905560408051828152602081018a90527f3b9670cf975d26958e754b57098eaa2ac914d8d2a31b83257997b9f346110fd9910160405180910390a15f98975050505050505050565b6028546040516318c5e8ab60e01b81526001600160a01b03909116906318c5e8ab906120dc9033908590600401613945565b602060405180830381865afa1580156120f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061211b9190613968565b6121575760405162461bcd60e51b815260206004820152600d60248201526c1858d8d95cdcc819195b9a5959609a1b6044820152606401610e79565b50565b5f60095f6121685f856110ec565b81526020019081526020015f209050919050565b805460ff166121575760405162461bcd60e51b81526020600482015260116024820152701b585c9ad95d081b9bdd081b1a5cdd1959607a1b6044820152606401610e79565b6121e2604051806060016040528060298152602001613b60602991396120aa565b8151815181158015906121f457508082145b6122305760405162461bcd60e51b815260206004820152600d60248201526c1a5b9d985b1a59081a5b9c1d5d609a1b6044820152606401610e79565b5f5b82811015610db85783818151811061224c5761224c613983565b6020026020010151601f5f87848151811061226957612269613983565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f20819055508481815181106122a6576122a6613983565b60200260200101516001600160a01b03167f6f1951b2aad10f3fc81b86d91105b413a5b3f847a34bbc5ce1904201b14438f68583815181106122ea576122ea613983565b602002602001015160405161230191815260200190565b60405180910390a2600101612232565b612332604051806060016040528060298152602001613a66602991396120aa565b825182515f5b82811015612398575f5b8281101561238f5761238787838151811061235f5761235f613983565b602002602001015187838151811061237957612379613983565b602002602001015187612d54565b600101612342565b50600101612338565b505050505050565b5f546001600160a01b031633146123ea5760405162461bcd60e51b815260206004820152600e60248201526d37b7363c9030b236b4b71031b0b760911b6044820152606401610e79565b565b5f60095f6123fa86866110ec565b81526020019081526020015f20600501548280820361242b5760405162461bcd60e51b8152600401610e79906135f1565b6037546001600160601b03908116908716111561246657604051632db8671b60e11b81526001600160601b0387166004820152602401610e79565b5f60095f61247489896110ec565b81526020019081526020015f20905061248c8161217c565b670de0b6b3a76400008510156124d75760405162461bcd60e51b815260206004820152601060248201526f0d2dcc6cadce8d2ecca40784062ca62760831b6044820152606401610e79565b856001600160a01b0316876001600160601b03167fc1d7bc090f3a87255c2f4e56f66d1b7a49683d279f77921b1701aa5d733ef745836005015488604051612529929190918252602082015260400190565b60405180910390a3600581018590555f611d69565b6001600160a01b0381166121575760405162461bcd60e51b815260206004820152601560248201527463616e2774206265207a65726f206164647265737360581b6044820152606401610e79565b601c54158061259c5750601c5443105b156125a357565b6033546040516370a0823160e01b81523060048201526001600160a01b03909116905f9082906370a0823190602401602060405180830381865afa1580156125ed573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906126119190613997565b9050805f0361261e575050565b5f8061262c43601c54612df8565b90505f61263b601a5483612e31565b905080841061264c57809250612650565b8392505b601d54831015612661575050505050565b43601c55601b5461267f906001600160a01b03878116911685612e72565b6040518381527ff6d4b8f74d85a6e2d7a50225957b8a6cfec69ad92f5905627260541aa0a5565d9060200160405180910390a1601b5f9054906101000a90046001600160a01b03166001600160a01b031663faa1809e6040518163ffffffff1660e01b81526004015f604051808303815f87803b1580156126fe575f80fd5b505af1158015612710573d5f803e3d5ffd5b505050505050505050565b61273c604051806060016040528060298152602001613ae8602991396120aa565b81518151811580159061274e57508082145b61278a5760405162461bcd60e51b815260206004820152600d60248201526c1a5b9d985b1a59081a5b9c1d5d609a1b6044820152606401610e79565b5f5b82811015610db8578381815181106127a6576127a6613983565b602002602001015160275f8784815181106127c3576127c3613983565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f208190555084818151811061280057612800613983565b60200260200101516001600160a01b03167f9e0ad9cee10bdf36b7fbd38910c0bdff0f275ace679b45b922381c2723d676f885838151811061284457612844613983565b602002602001015160405161285b91815260200190565b60405180910390a260010161278c565b61288c604051806060016040528060238152602001613b11602391396120aa565b6015546001600160a01b038381169116146128ad576128ad610c688361215a565b6001600160a01b0382165f818152602d6020908152604091829020805460ff191685151590811790915591519182527f03561d5280ebb02280893b1d60978e4a27e7654a149c5d0e7c2cf65389ce1694910160405180910390a25050565b6004545f906001600160a01b039081169083908116820361293e5760405162461bcd60e51b8152600401610e799061363c565b6129466123a0565b61294f8461253e565b600480546001600160a01b038681166001600160a01b03198316179092556040519116907fd52b2b9b7e9ee655fcb95d2e5b9e0c9f69e7ef2b8e9d2d0ea78402d576d22e2290610ec49083908890613699565b5f6129ac8461253e565b6037546001600160601b0390811690861611156129e757604051632db8671b60e11b81526001600160601b0386166004820152602401610e79565b5f60095f6129f588886110ec565b81526020019081526020015f209050612a0d8161217c565b670de0b6b3a7640000841115612a3157612a2960066008612cdd565b91505061164e565b8315801590612aab57506004805460405163fc57d4df60e01b81526001600160a01b038881169382019390935291169063fc57d4df90602401602060405180830381865afa158015612a85573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612aa99190613997565b155b15612abc57612a29600d6009612cdd565b670de0b6b3a7640000831115612ad857612a2960146019612cdd565b83831015612aec57612a296014601a612cdd565b6001810154848114612b4f576001820185905560408051828152602081018790526001600160a01b038816916001600160601b038a16917f0d1a615379dc62cec7bc63b7e313a07ed659918f4ad3720b3af8041b305146f2910160405180910390a35b6004820154848114612bb2576004830185905560408051828152602081018790526001600160a01b038916916001600160601b038b16917fc90f7b48c299a8d58b0b9e2756e27773c6fb1daab159af052d6c5b791bc7eef7910160405180910390a35b5f98975050505050505050565b5f612bc86123a0565b612bd18261253e565b603180546001600160a01b038481166001600160a01b03198316179092556040519116907fcb20dab7409e4fb972d9adccb39530520b226ce6940d85c9523a499b950b6ea390612c249083908690613699565b60405180910390a15f9392505050565b5f546001600160a01b031633148061211b5750336001600160a01b038216146121575760405162461bcd60e51b815260206004820152600d60248201526c1858d8d95cdcc819195b9a5959609a1b6044820152606401610e79565b60185462010000900460ff16156123ea5760405162461bcd60e51b81526020600482015260126024820152711c1c9bdd1bd8dbdb081a5cc81c185d5cd95960721b6044820152606401610e79565b5f7f45b96fe442630264581b197e84bbada861235052c5a1aadfff9ea4e40a969aa0836014811115612d1157612d11613628565b83601a811115612d2357612d23613628565b6040805192835260208301919091525f9082015260600160405180910390a1826014811115610f0857610f08613628565b612d60610c688461215a565b6001600160a01b0383165f9081526029602052604081208291846008811115612d8b57612d8b613628565b815260208101919091526040015f20805460ff1916911515919091179055816008811115612dbb57612dbb613628565b836001600160a01b03167f35007a986bcd36d2f73fc7f1b73762e12eadb4406dd163194950fd3b5a6a827d83604051610ccd911515815260200190565b5f610f088383604051806040016040528060158152602001747375627472616374696f6e20756e646572666c6f7760581b815250612ec9565b5f610f0883836040518060400160405280601781526020017f6d756c7469706c69636174696f6e206f766572666c6f77000000000000000000815250612ef7565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052612ec4908490612f50565b505050565b5f8184841115612eec5760405162461bcd60e51b8152600401610e7991906139ae565b50610f0583856139d4565b5f831580612f03575082155b15612f0f57505f610f08565b5f612f1a84866139e7565b905083612f2786836139fe565b148390612f475760405162461bcd60e51b8152600401610e7991906139ae565b50949350505050565b5f612fa4826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166130239092919063ffffffff16565b905080515f1480612fc4575080806020019051810190612fc49190613968565b612ec45760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610e79565b6060610f0584845f85855f80866001600160a01b031685876040516130489190613a1d565b5f6040518083038185875af1925050503d805f8114613082576040519150601f19603f3d011682016040523d82523d5f602084013e613087565b606091505b5091509150611d6987838387606083156131015782515f036130fa576001600160a01b0385163b6130fa5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610e79565b508161164e565b61164e83838151156131165781518083602001fd5b8060405162461bcd60e51b8152600401610e7991906139ae565b6001600160a01b0381168114612157575f80fd5b5f60208284031215613154575f80fd5b8135610f0881613130565b5f8060408385031215613170575f80fd5b823561317b81613130565b9150602083013561318b81613130565b809150509250929050565b5f602082840312156131a6575f80fd5b5035919050565b8015158114612157575f80fd5b5f805f606084860312156131cc575f80fd5b83356131d781613130565b925060208401356131e781613130565b915060408401356131f7816131ad565b809150509250925092565b5f8083601f840112613212575f80fd5b50813567ffffffffffffffff811115613229575f80fd5b6020830191508360208260051b8501011115613243575f80fd5b9250929050565b5f805f806040858703121561325d575f80fd5b843567ffffffffffffffff80821115613274575f80fd5b61328088838901613202565b90965094506020870135915080821115613298575f80fd5b506132a587828801613202565b95989497509550505050565b5f805f805f606086880312156132c5575f80fd5b853567ffffffffffffffff808211156132dc575f80fd5b6132e889838a01613202565b90975095506020880135915080821115613300575f80fd5b5061330d88828901613202565b9094509250506040860135613321816131ad565b809150509295509295909350565b5f6020828403121561333f575f80fd5b8135610f08816131ad565b80356001600160601b0381168114613360575f80fd5b919050565b5f805f60608486031215613377575f80fd5b6133808461334a565b9250602084013561339081613130565b929592945050506040919091013590565b5f80604083850312156133b2575f80fd5b82356133bd81613130565b9150602083013561318b816131ad565b5f80604083850312156133de575f80fd5b6133bd8361334a565b5f80604083850312156133f8575f80fd5b61317b8361334a565b5f805f60608486031215613413575f80fd5b833561341e81613130565b95602085013595506040909401359392505050565b5f805f8060808587031215613446575f80fd5b61344f8561334a565b9350602085013561345f81613130565b93969395505050506040820135916060013590565b5f60208284031215613484575f80fd5b610f088261334a565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b606081525f6134cd606083018661348d565b931515602083015250901515604090910152919050565b5f80604083850312156134f5575f80fd5b823561350081613130565b946020939093013593505050565b5f805f60608486031215613520575f80fd5b6131d78461334a565b5f805f6040848603121561353b575f80fd5b6135448461334a565b9250602084013567ffffffffffffffff80821115613560575f80fd5b818601915086601f830112613573575f80fd5b813581811115613581575f80fd5b876020828501011115613592575f80fd5b6020830194508093505050509250925092565b5f805f606084860312156135b7575f80fd5b833561338081613130565b5f80604083850312156135d3575f80fd5b82356135de81613130565b915060208301356009811061318b575f80fd5b6020808252601e908201527f6f6c642076616c75652069732073616d65206173206e65772076616c75650000604082015260600190565b634e487b7160e01b5f52602160045260245ffd5b60208082526022908201527f6f6c6420616464726573732069732073616d65206173206e6577206164647265604082015261737360f01b606082015260800190565b5f6020828403121561368e575f80fd5b8151610f0881613130565b6001600160a01b0392831681529116602082015260400190565b600181811c908216806136c757607f821691505b6020821081036136e557634e487b7160e01b5f52602260045260245ffd5b50919050565b818382375f9101908152919050565b5f808354613707816136b3565b6001828116801561371f576001811461373457613760565b60ff1984168752821515830287019450613760565b875f526020805f205f5b858110156137575781548a82015290840190820161373e565b50505082870194505b50929695505050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f8085546137a5816136b3565b806040860152606060018084165f81146137c657600181146137e257613811565b60ff1985166060890152606084151560051b8901019550613811565b8a5f526020805f205f5b868110156138075781548b82018701529084019082016137ec565b8a01606001975050505b5050505050828103602084015261382981858761376c565b9695505050505050565b634e487b7160e01b5f52604160045260245ffd5b601f821115612ec457805f5260205f20601f840160051c8101602085101561386c5750805b601f840160051c820191505b81811015610db8575f8155600101613878565b67ffffffffffffffff8311156138a3576138a3613833565b6138b7836138b183546136b3565b83613847565b5f601f8411600181146138e8575f85156138d15750838201355b5f19600387901b1c1916600186901b178355610db8565b5f83815260208120601f198716915b8281101561391757868501358255602094850194600190920191016138f7565b5086821015613933575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160a01b03831681526040602082018190525f90610f059083018461348d565b5f60208284031215613978575f80fd5b8151610f08816131ad565b634e487b7160e01b5f52603260045260245ffd5b5f602082840312156139a7575f80fd5b5051919050565b602081525f610f08602083018461348d565b634e487b7160e01b5f52601160045260245ffd5b81810381811115610c2057610c206139c0565b8082028115828204841417610c2057610c206139c0565b5f82613a1857634e487b7160e01b5f52601260045260245ffd5b500490565b5f82518060208501845e5f92019182525091905056fe5f736574466f726365644c69717569646174696f6e466f725573657228616464726573732c616464726573732c626f6f6c295f736574416374696f6e7350617573656428616464726573735b5d2c75696e74385b5d2c626f6f6c297365744c69717569646174696f6e496e63656e746976652875696e7439362c616464726573732c75696e743235362973657457686974654c697374466c6173684c6f616e4163636f756e7428616464726573732c626f6f6c295f7365744d61726b6574537570706c794361707328616464726573735b5d2c75696e743235365b5d295f736574466f726365644c69717569646174696f6e28616464726573732c626f6f6c29736574436f6c6c61746572616c466163746f7228616464726573732c75696e743235362c75696e74323536295f7365744d61726b6574426f72726f774361707328616464726573735b5d2c75696e743235365b5d29736574416c6c6f77436f7265506f6f6c46616c6c6261636b2875696e7439362c626f6f6c29736574436f6c6c61746572616c466163746f722875696e7439362c616464726573732c75696e743235362c75696e74323536297365744c69717569646174696f6e496e63656e7469766528616464726573732c75696e74323536297365744973426f72726f77416c6c6f7765642875696e7439362c616464726573732c626f6f6c29a2646970667358221220848be49d31816fdf220cfa5f584074f3f583a7247c2cb8fb154a92ab79f8595d64736f6c63430008190033",
|
|
2566
|
+
"bytecode": "0x6080604052348015600e575f80fd5b50613d878061001c5f395ff3fe608060405234801561000f575f80fd5b50600436106104d2575f3560e01c80638a7dc16511610284578063bf32442d11610161578063dce15449116100d5578063f445d7031161008f578063f445d70314610bd6578063f519fc3014610c03578063f851a44014610c16578063fa6331d814610c28578063fd51a3ad14610c31578063fe40768f14610c44575f80fd5b8063dce1544914610b3b578063dcfbc0c714610b4e578063e0f6123d14610b61578063e37d4b7914610b83578063e85a296014610bba578063e875544614610bcd575f80fd5b8063d136af4411610126578063d136af4414610740578063d24febad14610ae3578063d3270f9914610af6578063d463654c14610b09578063d6ad5c3914610b10578063d7c46d2d14610b23575f80fd5b8063bf32442d14610a7e578063c32094c7146108ff578063c5b4db5514610a8f578063c5f956af14610abd578063c7ee005e14610ad0575f80fd5b80639bf34cbb116101f8578063b8324c7c116101bd578063b8324c7c146109c2578063b88d846b14610a1d578063bb82aa5e14610a30578063bb85745014610a43578063bbb8864a14610a56578063bec04f7214610a75575f80fd5b80639bf34cbb146109635780639cfdd9e614610976578063a657e57914610989578063a89766dd1461099c578063b2eafc39146109af575f80fd5b80639254f5e5116102495780639254f5e5146108ec5780639460c8b5146108ff57806394b2294b1461091257806396c990641461091b5780639bb27d621461093d5780639bd8f6e814610950575f80fd5b80638a7dc165146108855780638b3113f6146107535780638c1ac18a146108a45780639159b177146108c6578063919a3736146108d9575f80fd5b80634964f48c116103b25780635dd3fc9d1161032657806373769099116102eb57806373769099146107ed578063765513831461082d5780637938146f1461083f5780637d172bd5146108525780637dc0d1d0146108655780637fb8e8cd14610878575f80fd5b80635dd3fc9d1461079f5780635f5af1aa146107be578063607ef6c1146105a95780636662c7c9146107d1578063719f701b146107e4575f80fd5b806351a485e41161037757806351a485e414610740578063522c656b1461075357806352d84d1e14610766578063530e784f1461077957806355ee1fe1146107795780635cc4fdeb1461078c575f80fd5b80634964f48c146106d55780634a584432146106e85780634d99c776146107075780634e0853db1461071a5780634ef233fc1461072d575f80fd5b80632678224711610449578063317b0b771161040e578063317b0b771461058157806335439240146106655780634088c73e1461067857806341a18d2c14610685578063425fad58146106af57806342adb211146106c2575f80fd5b8063267822471461060d5780632a6a6065146106205780632b5d790c146105fa5780632bc7e29e146106335780632ec0412414610652575f80fd5b806312348e961161049a57806312348e961461058157806317db216314610594578063186db48f146105a957806321af4569146105bc57806324a3d622146105e757806324aaa220146105fa575f80fd5b806302c3bcbb146104d657806304ef9d581461050857806308e0225c146105115780630db4b4e51461053b57806310b9833814610544575b5f80fd5b6104f56104e4366004613244565b60276020525f908152604090205481565b6040519081526020015b60405180910390f35b6104f560225481565b6104f561051f36600461325f565b601360209081525f928352604080842090915290825290205481565b6104f5601d5481565b61057161055236600461325f565b602c60209081525f928352604080842090915290825290205460ff1681565b60405190151581526020016104ff565b6104f561058f366004613296565b610c57565b6105a76105a23660046132ba565b610c67565b005b6105a76105b736600461334a565b610d1b565b601e546105cf906001600160a01b031681565b6040516001600160a01b0390911681526020016104ff565b600a546105cf906001600160a01b031681565b6105a76106083660046133b1565b610d8c565b6001546105cf906001600160a01b031681565b61057161062e36600461342f565b610e00565b6104f5610641366004613244565b60166020525f908152604090205481565b6104f5610660366004613296565b610e96565b6104f5610673366004613465565b610f19565b6018546105719060ff1681565b6104f561069336600461325f565b601260209081525f928352604080842090915290825290205481565b6018546105719062010000900460ff1681565b6105a76106d03660046134a1565b610f50565b6105a76106e33660046134cd565b610ff8565b6104f56106f6366004613244565b601f6020525f908152604090205481565b6104f56107153660046134e7565b61112d565b6105a7610728366004613501565b61114a565b6105a761073b366004613244565b61120d565b6105a761074e36600461334a565b61133b565b6105a76107613660046134a1565b6113a6565b6105cf610774366004613296565b6113b4565b6104f5610787366004613244565b6113dc565b6104f561079a366004613501565b6113e6565b6104f56107ad366004613244565b602b6020525f908152604090205481565b6104f56107cc366004613244565b611414565b6105a76107df366004613296565b6114ab565b6104f5601c5481565b6108156107fb366004613244565b60356020525f90815260409020546001600160601b031681565b6040516001600160601b0390911681526020016104ff565b60185461057190610100900460ff1681565b6105a761084d3660046134cd565b611537565b601b546105cf906001600160a01b031681565b6004546105cf906001600160a01b031681565b6039546105719060ff1681565b6104f5610893366004613244565b60146020525f908152604090205481565b6105716108b2366004613244565b602d6020525f908152604090205460ff1681565b6104f56108d4366004613533565b61165e565b6105a76108e7366004613244565b611697565b6015546105cf906001600160a01b031681565b6104f561090d366004613244565b611703565b6104f560075481565b61092e610929366004613574565b61170d565b6040516104ff939291906135bb565b6025546105cf906001600160a01b031681565b6104f561095e3660046135e4565b6117ba565b6104f5610971366004613244565b6117e7565b6104f5610984366004613244565b61187d565b603754610815906001600160601b031681565b6105a76109aa36600461360e565b611914565b6020546105cf906001600160a01b031681565b6109f96109d0366004613244565b60106020525f90815260409020546001600160e01b03811690600160e01b900463ffffffff1682565b604080516001600160e01b03909316835263ffffffff9091166020830152016104ff565b6105a7610a2b366004613629565b611a55565b6002546105cf906001600160a01b031681565b6105a7610a51366004613244565b611bb9565b6104f5610a64366004613244565b602a6020525f908152604090205481565b6104f560175481565b6033546001600160a01b03166105cf565b610aa56ec097ce7bc90715b34b9f100000000081565b6040516001600160e01b0390911681526020016104ff565b6021546105cf906001600160a01b031681565b6031546105cf906001600160a01b031681565b6104f5610af13660046136a5565b611c4e565b6026546105cf906001600160a01b031681565b6108155f81565b6105a7610b1e36600461342f565b611db5565b6039546105cf9061010090046001600160a01b031681565b6105cf610b493660046135e4565b611e5e565b6003546105cf906001600160a01b031681565b610571610b6f366004613244565b60386020525f908152604090205460ff1681565b6109f9610b91366004613244565b60116020525f90815260409020546001600160e01b03811690600160e01b900463ffffffff1682565b610571610bc83660046136c2565b611e92565b6104f560055481565b610571610be436600461325f565b603260209081525f928352604080842090915290825290205460ff1681565b6104f5610c11366004613244565b611ed6565b5f546105cf906001600160a01b031681565b6104f5601a5481565b6104f5610c3f3660046135e4565b611f6d565b6104f5610c52366004613244565b612011565b5f610c61826120d0565b92915050565b610c88604051806060016040528060328152602001613b34603291396121aa565b6015546001600160a01b03838116911614610cae57610cae610ca98361225a565b61227c565b6001600160a01b038381165f81815260326020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527fc080966e9e93529edc1b244180c245bc60f3d86f1e690a17651a5e428746a8cd91015b60405180910390a3505050565b610d868484808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250506040805160208088028281018201909352878252909350879250869182918501908490808284375f920191909152506122c192505050565b50505050565b610df98585808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250506040805160208089028281018201909352888252909350889250879182918501908490808284375f92019190915250869250612411915050565b5050505050565b5f610e3f6040518060400160405280601881526020017f5f73657450726f746f636f6c50617573656428626f6f6c2900000000000000008152506121aa565b60188054831515620100000262ff0000199091161790556040517fd7500633dd3ddd74daa7af62f8c8404c7fe4a81da179998db851696bed004b3890610e8a90841515815260200190565b60405180910390a15090565b5f60175482808203610ec35760405162461bcd60e51b8152600401610eba906136f1565b60405180910390fd5b610ecb6124a0565b601780549085905560408051828152602081018790527f73747d68b346dce1e932bcd238282e7ac84c01569e1f8d0469c222fdc6e9d5a491015b60405180910390a15f9350505b5050919050565b5f610f3b6040518060600160405280602f8152602001613b8f602f91396121aa565b610f468484846124ec565b90505b9392505050565b610f716040518060600160405280602a8152602001613bbe602a91396121aa565b610f7a8261263e565b6001600160a01b0382165f9081526038602052604090205481151560ff909116151503610fa5575050565b6001600160a01b0382165f81815260386020526040808220805460ff191685151590811790915590519092917f1f4df5032f431b9890646a781be28b0d693e581666d1a80be27ae3959069172291a35050565b6110366040518060400160405280601a81526020017f736574506f6f6c4163746976652875696e7439362c626f6f6c290000000000008152506121aa565b6037546001600160601b03908116908316111561107157604051632db8671b60e11b81526001600160601b0383166004820152602401610eba565b6001600160601b03821661109857604051630203217b60e61b815260040160405180910390fd5b6001600160601b0382165f908152603660205260409020600281015482151560ff9091161515036110c857505050565b60028101546040805160ff9092161515825283151560208301526001600160601b038516917f75e42fceb039532886a9d75717e843bfef67fd7f6f91f0fc5b1d48e9ce8a1ba9910160405180910390a2600201805460ff191691151591909117905550565b6001600160a01b031660a09190911b6001600160a01b0319161790565b601b546001600160a01b039081169084908116820361117b5760405162461bcd60e51b8152600401610eba9061373c565b6111836124a0565b61118c8561263e565b601b546001600160a01b0316156111a5576111a561268c565b601b80546001600160a01b0319166001600160a01b038716908117909155601c859055601d84905560408051868152602081018690527f7059037d74ee16b0fb06a4a30f3348dd2635f301f92e373c92899a25a522ef6e910160405180910390a25050505050565b6112156124a0565b61121e8161263e565b5f816001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa15801561125b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061127f919061377e565b6033549091506001600160a01b038083169116146112df5760405162461bcd60e51b815260206004820152601a60248201527f696e76616c6964207876732076746f6b656e20616464726573730000000000006044820152606401610eba565b6034546040516001600160a01b038085169216907f2565e1579c0926afb7113edbfd85373e85cadaa3e0346f04de19686a2bb86ed1905f90a350603480546001600160a01b0319166001600160a01b0392909216919091179055565b610d868484808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250506040805160208088028281018201909352878252909350879250869182918501908490808284375f9201919091525061281b92505050565b6113b0828261296b565b5050565b600d81815481106113c3575f80fd5b5f918252602090912001546001600160a01b0316905081565b5f610c6182612a0b565b5f6114086040518060600160405280602c8152602001613c34602c91396121aa565b610f465f858585612aa2565b600a545f906001600160a01b03908116908390811682036114475760405162461bcd60e51b8152600401610eba9061373c565b61144f6124a0565b6114588461263e565b600a80546001600160a01b038681166001600160a01b03198316179092556040519116907f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e90610f059083908890613799565b601a54818082036114ce5760405162461bcd60e51b8152600401610eba906136f1565b6114d66124a0565b601b546001600160a01b0316156114ef576114ef61268c565b601a80549084905560408051828152602081018690527fe81d4ac15e5afa1e708e66664eddc697177423d950d133bda8262d8885e6da3b91015b60405180910390a150505050565b611558604051806060016040528060258152602001613c89602591396121aa565b6037546001600160601b03908116908316111561159357604051632db8671b60e11b81526001600160601b0383166004820152602401610eba565b6001600160601b0382166115ba57604051630203217b60e61b815260040160405180910390fd5b6001600160601b0382165f908152603660205260409020600281015482151561010090910460ff161515036115ee57505050565b60028101546040805161010090920460ff161515825283151560208301526001600160601b038516917f9d2a9183b06e3492f91d3d88ae222e700c8873dd0068f9c3fc783eccb96a1ec4910160405180910390a260020180549115156101000261ff001990921691909117905550565b5f611680604051806060016040528060338152602001613cae603391396121aa565b61168c85858585612aa2565b90505b949350505050565b61169f6124a0565b6116a88161263e565b6033546040516001600160a01b038084169216907ffe7fd0d872def0f65050e9f38fc6691d0c192c694a56f09b04bec5fb2ea61f2b905f90a3603380546001600160a01b0319166001600160a01b0392909216919091179055565b5f610c6182612cbf565b60366020525f9081526040902080548190611727906137b3565b80601f0160208091040260200160405190810160405280929190818152602001828054611753906137b3565b801561179e5780601f106117755761010080835404028352916020019161179e565b820191905f5260205f20905b81548152906001019060200180831161178157829003601f168201915b5050506002909301549192505060ff8082169161010090041683565b5f6117dc604051806060016040528060288152602001613ce1602891396121aa565b610f495f84846124ec565b6026545f906001600160a01b039081169083908116820361181a5760405162461bcd60e51b8152600401610eba9061373c565b6118226124a0565b61182b8461263e565b602680546001600160a01b038681166001600160a01b0319831681179093556040519116917f0f7eb572d1b3053a0a3a33c04151364cf88d163182a5e4e1088cb8e52321e08a91610f05918491613799565b6015545f906001600160a01b03908116908390811682036118b05760405162461bcd60e51b8152600401610eba9061373c565b6118b86124a0565b6118c18461263e565b601580546001600160a01b038681166001600160a01b03198316179092556040519116907fe1ddcb2dab8e5b03cfc8c67a0d5861d91d16f7bd2612fd381faf4541d212c9b290610f059083908890613799565b611935604051806060016040528060278152602001613d09602791396121aa565b6037546001600160601b03908116908416111561197057604051632db8671b60e11b81526001600160601b0384166004820152602401610eba565b5f61197b848461112d565b5f81815260096020526040902080549192509060ff166119ae57604051630665210960e21b815260040160405180910390fd5b82151581600601600c9054906101000a900460ff161515036119d1575050505050565b600681015460408051600160601b90920460ff161515825284151560208301526001600160a01b038616916001600160601b038816917fe40f9c4af130bdb5bd1650ab4bc918dba9d900fa94685f0113e72a6cfe6c5fcc910160405180910390a36006018054921515600160601b0260ff60601b1990931692909217909155505050565b611a936040518060400160405280601b81526020017f736574506f6f6c4c6162656c2875696e7439362c737472696e672900000000008152506121aa565b6037546001600160601b039081169084161115611ace57604051632db8671b60e11b81526001600160601b0384166004820152602401610eba565b6001600160601b038316611af557604051630203217b60e61b815260040160405180910390fd5b5f819003611b165760405163522e397360e11b815260040160405180910390fd5b6001600160601b0383165f90815260366020526040908190209051611b3e90849084906137eb565b60405190819003812090611b539083906137fa565b604051809103902003611b665750505050565b836001600160601b03167f1ebc260ee8077871ff0b70b184ff9dac4ecee8b0f7dcc4f3a3f5068549f5078e825f018585604051611ba593929190613894565b60405180910390a280610df983858361398b565b6025546001600160a01b0390811690829081168203611bea5760405162461bcd60e51b8152600401610eba9061373c565b611bf26124a0565b611bfb8361263e565b602580546001600160a01b038581166001600160a01b03198316179092556040519116907fa5ea5616d5f6dbbaa62fdfcf3856723216eed485c394d9e51ec8e6d40e1d1ac1906115299083908790613799565b6020545f90611c65906001600160a01b0316612d34565b670de0b6b3a76400008210611cae5760405162461bcd60e51b815260206004820152600f60248201526e70657263656e74203e3d203130302560881b6044820152606401610eba565b611cb78461263e565b611cc08361263e565b6020805460218054602280546001600160a01b03198086166001600160a01b038c8116919091179097558316898716179093558690556040519284169316917f29f06ea15931797ebaed313d81d100963dc22cb213cb4ce2737b5a62b1a8b1e890611d2e9085908a90613799565b60405180910390a17f8de763046d7b8f08b6c3d03543de1d615309417842bb5d2d62f110f65809ddac8287604051611d67929190613799565b60405180910390a160408051828152602081018790527f0893f8f4101baaabbeb513f96761e7a36eb837403c82cc651c292a4abdc94ed7910160405180910390a15f5b979650505050505050565b611df36040518060400160405280601881526020017f736574466c6173684c6f616e50617573656428626f6f6c2900000000000000008152506121aa565b60395481151560ff909116151503611e085750565b6039546040805160ff9092161515825282151560208301527f79bcfb2700d56371c7684799f99d64cbcd91f1e360f8048a42c9ba534be7c0a8910160405180910390a16039805460ff1916911515919091179055565b6008602052815f5260405f208181548110611e77575f80fd5b5f918252602090912001546001600160a01b03169150829050565b6001600160a01b0382165f90815260296020526040812081836008811115611ebc57611ebc613728565b815260208101919091526040015f205460ff169392505050565b6028545f906001600160a01b0390811690839081168203611f095760405162461bcd60e51b8152600401610eba9061373c565b611f116124a0565b611f1a8461263e565b602880546001600160a01b038681166001600160a01b03198316179092556040519116907f0f1eca7612e020f6e4582bcead0573eba4b5f7b56668754c6aed82ef12057dd490610f059083908890613799565b5f611f76612d8f565b60185460ff16158015611f915750601854610100900460ff16155b611fcd5760405162461bcd60e51b815260206004820152600d60248201526c159052481a5cc81c185d5cd959609a1b6044820152606401610eba565b6015546001600160a01b03163314611ff257611feb600e6016612ddd565b9050610c61565b6001600160a01b0383165f908152601660205260408120839055610f49565b6039545f906001600160a01b036101009091048116908390811682036120495760405162461bcd60e51b8152600401610eba9061373c565b61206a604051806060016040528060228152602001613d30602291396121aa565b6120738461263e565b603980546001600160a01b03868116610100908102610100600160a81b03198416179093556040519290910416907fc4877d82ec0586c93fbd01eb65785e064f0c31b594e7f413e5f16502f25cf27390610f059083908890613799565b5f600554828082036120f45760405162461bcd60e51b8152600401610eba906136f1565b6120fc6124a0565b604080516020808201835286825282518082018452670c7d713b49da00008152835191820190935266b1a2bc2ec500008152815183519293921080612142575082518151115b1561215c57612152600580612ddd565b9550505050610f12565b600580549088905560408051828152602081018a90527f3b9670cf975d26958e754b57098eaa2ac914d8d2a31b83257997b9f346110fd9910160405180910390a15f98975050505050505050565b6028546040516318c5e8ab60e01b81526001600160a01b03909116906318c5e8ab906121dc9033908590600401613a45565b602060405180830381865afa1580156121f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061221b9190613a68565b6122575760405162461bcd60e51b815260206004820152600d60248201526c1858d8d95cdcc819195b9a5959609a1b6044820152606401610eba565b50565b5f60095f6122685f8561112d565b81526020019081526020015f209050919050565b805460ff166122575760405162461bcd60e51b81526020600482015260116024820152701b585c9ad95d081b9bdd081b1a5cdd1959607a1b6044820152606401610eba565b6122e2604051806060016040528060298152602001613c60602991396121aa565b8151815181158015906122f457508082145b6123305760405162461bcd60e51b815260206004820152600d60248201526c1a5b9d985b1a59081a5b9c1d5d609a1b6044820152606401610eba565b5f5b82811015610df95783818151811061234c5761234c613a83565b6020026020010151601f5f87848151811061236957612369613a83565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f20819055508481815181106123a6576123a6613a83565b60200260200101516001600160a01b03167f6f1951b2aad10f3fc81b86d91105b413a5b3f847a34bbc5ce1904201b14438f68583815181106123ea576123ea613a83565b602002602001015160405161240191815260200190565b60405180910390a2600101612332565b612432604051806060016040528060298152602001613b66602991396121aa565b825182515f5b82811015612498575f5b8281101561248f5761248787838151811061245f5761245f613a83565b602002602001015187838151811061247957612479613a83565b602002602001015187612e54565b600101612442565b50600101612438565b505050505050565b5f546001600160a01b031633146124ea5760405162461bcd60e51b815260206004820152600e60248201526d37b7363c9030b236b4b71031b0b760911b6044820152606401610eba565b565b5f60095f6124fa868661112d565b81526020019081526020015f20600501548280820361252b5760405162461bcd60e51b8152600401610eba906136f1565b6037546001600160601b03908116908716111561256657604051632db8671b60e11b81526001600160601b0387166004820152602401610eba565b5f60095f612574898961112d565b81526020019081526020015f20905061258c8161227c565b670de0b6b3a76400008510156125d75760405162461bcd60e51b815260206004820152601060248201526f0d2dcc6cadce8d2ecca40784062ca62760831b6044820152606401610eba565b856001600160a01b0316876001600160601b03167fc1d7bc090f3a87255c2f4e56f66d1b7a49683d279f77921b1701aa5d733ef745836005015488604051612629929190918252602082015260400190565b60405180910390a3600581018590555f611daa565b6001600160a01b0381166122575760405162461bcd60e51b815260206004820152601560248201527463616e2774206265207a65726f206164647265737360581b6044820152606401610eba565b601c54158061269c5750601c5443105b156126a357565b6033546040516370a0823160e01b81523060048201526001600160a01b03909116905f9082906370a0823190602401602060405180830381865afa1580156126ed573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127119190613a97565b9050805f0361271e575050565b5f8061272c43601c54612ef8565b90505f61273b601a5483612f31565b905080841061274c57809250612750565b8392505b601d54831015612761575050505050565b43601c55601b5461277f906001600160a01b03878116911685612f72565b6040518381527ff6d4b8f74d85a6e2d7a50225957b8a6cfec69ad92f5905627260541aa0a5565d9060200160405180910390a1601b5f9054906101000a90046001600160a01b03166001600160a01b031663faa1809e6040518163ffffffff1660e01b81526004015f604051808303815f87803b1580156127fe575f80fd5b505af1158015612810573d5f803e3d5ffd5b505050505050505050565b61283c604051806060016040528060298152602001613be8602991396121aa565b81518151811580159061284e57508082145b61288a5760405162461bcd60e51b815260206004820152600d60248201526c1a5b9d985b1a59081a5b9c1d5d609a1b6044820152606401610eba565b5f5b82811015610df9578381815181106128a6576128a6613a83565b602002602001015160275f8784815181106128c3576128c3613a83565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f208190555084818151811061290057612900613a83565b60200260200101516001600160a01b03167f9e0ad9cee10bdf36b7fbd38910c0bdff0f275ace679b45b922381c2723d676f885838151811061294457612944613a83565b602002602001015160405161295b91815260200190565b60405180910390a260010161288c565b61298c604051806060016040528060238152602001613c11602391396121aa565b6015546001600160a01b038381169116146129ad576129ad610ca98361225a565b6001600160a01b0382165f818152602d6020908152604091829020805460ff191685151590811790915591519182527f03561d5280ebb02280893b1d60978e4a27e7654a149c5d0e7c2cf65389ce1694910160405180910390a25050565b6004545f906001600160a01b0390811690839081168203612a3e5760405162461bcd60e51b8152600401610eba9061373c565b612a466124a0565b612a4f8461263e565b600480546001600160a01b038681166001600160a01b03198316179092556040519116907fd52b2b9b7e9ee655fcb95d2e5b9e0c9f69e7ef2b8e9d2d0ea78402d576d22e2290610f059083908890613799565b5f612aac8461263e565b6037546001600160601b039081169086161115612ae757604051632db8671b60e11b81526001600160601b0386166004820152602401610eba565b5f60095f612af5888861112d565b81526020019081526020015f209050612b0d8161227c565b670de0b6b3a7640000841115612b3157612b2960066008612ddd565b91505061168f565b8315801590612bab57506004805460405163fc57d4df60e01b81526001600160a01b038881169382019390935291169063fc57d4df90602401602060405180830381865afa158015612b85573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612ba99190613a97565b155b15612bbc57612b29600d6009612ddd565b670de0b6b3a7640000831115612bd857612b2960146019612ddd565b83831015612bec57612b296014601a612ddd565b6001810154848114612c4f576001820185905560408051828152602081018790526001600160a01b038816916001600160601b038a16917f0d1a615379dc62cec7bc63b7e313a07ed659918f4ad3720b3af8041b305146f2910160405180910390a35b6004820154848114612cb2576004830185905560408051828152602081018790526001600160a01b038916916001600160601b038b16917fc90f7b48c299a8d58b0b9e2756e27773c6fb1daab159af052d6c5b791bc7eef7910160405180910390a35b5f98975050505050505050565b5f612cc86124a0565b612cd18261263e565b603180546001600160a01b038481166001600160a01b03198316179092556040519116907fcb20dab7409e4fb972d9adccb39530520b226ce6940d85c9523a499b950b6ea390612d249083908690613799565b60405180910390a15f9392505050565b5f546001600160a01b031633148061221b5750336001600160a01b038216146122575760405162461bcd60e51b815260206004820152600d60248201526c1858d8d95cdcc819195b9a5959609a1b6044820152606401610eba565b60185462010000900460ff16156124ea5760405162461bcd60e51b81526020600482015260126024820152711c1c9bdd1bd8dbdb081a5cc81c185d5cd95960721b6044820152606401610eba565b5f7f45b96fe442630264581b197e84bbada861235052c5a1aadfff9ea4e40a969aa0836014811115612e1157612e11613728565b83601a811115612e2357612e23613728565b6040805192835260208301919091525f9082015260600160405180910390a1826014811115610f4957610f49613728565b612e60610ca98461225a565b6001600160a01b0383165f9081526029602052604081208291846008811115612e8b57612e8b613728565b815260208101919091526040015f20805460ff1916911515919091179055816008811115612ebb57612ebb613728565b836001600160a01b03167f35007a986bcd36d2f73fc7f1b73762e12eadb4406dd163194950fd3b5a6a827d83604051610d0e911515815260200190565b5f610f498383604051806040016040528060158152602001747375627472616374696f6e20756e646572666c6f7760581b815250612fc9565b5f610f4983836040518060400160405280601781526020017f6d756c7469706c69636174696f6e206f766572666c6f77000000000000000000815250612ff7565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052612fc4908490613050565b505050565b5f8184841115612fec5760405162461bcd60e51b8152600401610eba9190613aae565b50610f468385613ad4565b5f831580613003575082155b1561300f57505f610f49565b5f61301a8486613ae7565b9050836130278683613afe565b1483906130475760405162461bcd60e51b8152600401610eba9190613aae565b50949350505050565b5f6130a4826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166131239092919063ffffffff16565b905080515f14806130c45750808060200190518101906130c49190613a68565b612fc45760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610eba565b6060610f4684845f85855f80866001600160a01b031685876040516131489190613b1d565b5f6040518083038185875af1925050503d805f8114613182576040519150601f19603f3d011682016040523d82523d5f602084013e613187565b606091505b5091509150611daa87838387606083156132015782515f036131fa576001600160a01b0385163b6131fa5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610eba565b508161168f565b61168f83838151156132165781518083602001fd5b8060405162461bcd60e51b8152600401610eba9190613aae565b6001600160a01b0381168114612257575f80fd5b5f60208284031215613254575f80fd5b8135610f4981613230565b5f8060408385031215613270575f80fd5b823561327b81613230565b9150602083013561328b81613230565b809150509250929050565b5f602082840312156132a6575f80fd5b5035919050565b8015158114612257575f80fd5b5f805f606084860312156132cc575f80fd5b83356132d781613230565b925060208401356132e781613230565b915060408401356132f7816132ad565b809150509250925092565b5f8083601f840112613312575f80fd5b50813567ffffffffffffffff811115613329575f80fd5b6020830191508360208260051b8501011115613343575f80fd5b9250929050565b5f805f806040858703121561335d575f80fd5b843567ffffffffffffffff80821115613374575f80fd5b61338088838901613302565b90965094506020870135915080821115613398575f80fd5b506133a587828801613302565b95989497509550505050565b5f805f805f606086880312156133c5575f80fd5b853567ffffffffffffffff808211156133dc575f80fd5b6133e889838a01613302565b90975095506020880135915080821115613400575f80fd5b5061340d88828901613302565b9094509250506040860135613421816132ad565b809150509295509295909350565b5f6020828403121561343f575f80fd5b8135610f49816132ad565b80356001600160601b0381168114613460575f80fd5b919050565b5f805f60608486031215613477575f80fd5b6134808461344a565b9250602084013561349081613230565b929592945050506040919091013590565b5f80604083850312156134b2575f80fd5b82356134bd81613230565b9150602083013561328b816132ad565b5f80604083850312156134de575f80fd5b6134bd8361344a565b5f80604083850312156134f8575f80fd5b61327b8361344a565b5f805f60608486031215613513575f80fd5b833561351e81613230565b95602085013595506040909401359392505050565b5f805f8060808587031215613546575f80fd5b61354f8561344a565b9350602085013561355f81613230565b93969395505050506040820135916060013590565b5f60208284031215613584575f80fd5b610f498261344a565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b606081525f6135cd606083018661358d565b931515602083015250901515604090910152919050565b5f80604083850312156135f5575f80fd5b823561360081613230565b946020939093013593505050565b5f805f60608486031215613620575f80fd5b6132d78461344a565b5f805f6040848603121561363b575f80fd5b6136448461344a565b9250602084013567ffffffffffffffff80821115613660575f80fd5b818601915086601f830112613673575f80fd5b813581811115613681575f80fd5b876020828501011115613692575f80fd5b6020830194508093505050509250925092565b5f805f606084860312156136b7575f80fd5b833561348081613230565b5f80604083850312156136d3575f80fd5b82356136de81613230565b915060208301356009811061328b575f80fd5b6020808252601e908201527f6f6c642076616c75652069732073616d65206173206e65772076616c75650000604082015260600190565b634e487b7160e01b5f52602160045260245ffd5b60208082526022908201527f6f6c6420616464726573732069732073616d65206173206e6577206164647265604082015261737360f01b606082015260800190565b5f6020828403121561378e575f80fd5b8151610f4981613230565b6001600160a01b0392831681529116602082015260400190565b600181811c908216806137c757607f821691505b6020821081036137e557634e487b7160e01b5f52602260045260245ffd5b50919050565b818382375f9101908152919050565b5f808354613807816137b3565b6001828116801561381f576001811461383457613860565b60ff1984168752821515830287019450613860565b875f526020805f205f5b858110156138575781548a82015290840190820161383e565b50505082870194505b50929695505050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f8085546138a5816137b3565b806040860152606060018084165f81146138c657600181146138e257613911565b60ff1985166060890152606084151560051b8901019550613911565b8a5f526020805f205f5b868110156139075781548b82018701529084019082016138ec565b8a01606001975050505b5050505050828103602084015261392981858761386c565b9695505050505050565b634e487b7160e01b5f52604160045260245ffd5b601f821115612fc457805f5260205f20601f840160051c8101602085101561396c5750805b601f840160051c820191505b81811015610df9575f8155600101613978565b67ffffffffffffffff8311156139a3576139a3613933565b6139b7836139b183546137b3565b83613947565b5f601f8411600181146139e8575f85156139d15750838201355b5f19600387901b1c1916600186901b178355610df9565b5f83815260208120601f198716915b82811015613a1757868501358255602094850194600190920191016139f7565b5086821015613a33575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160a01b03831681526040602082018190525f90610f469083018461358d565b5f60208284031215613a78575f80fd5b8151610f49816132ad565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215613aa7575f80fd5b5051919050565b602081525f610f49602083018461358d565b634e487b7160e01b5f52601160045260245ffd5b81810381811115610c6157610c61613ac0565b8082028115828204841417610c6157610c61613ac0565b5f82613b1857634e487b7160e01b5f52601260045260245ffd5b500490565b5f82518060208501845e5f92019182525091905056fe5f736574466f726365644c69717569646174696f6e466f725573657228616464726573732c616464726573732c626f6f6c295f736574416374696f6e7350617573656428616464726573735b5d2c75696e74385b5d2c626f6f6c297365744c69717569646174696f6e496e63656e746976652875696e7439362c616464726573732c75696e743235362973657457686974654c697374466c6173684c6f616e4163636f756e7428616464726573732c626f6f6c295f7365744d61726b6574537570706c794361707328616464726573735b5d2c75696e743235365b5d295f736574466f726365644c69717569646174696f6e28616464726573732c626f6f6c29736574436f6c6c61746572616c466163746f7228616464726573732c75696e743235362c75696e74323536295f7365744d61726b6574426f72726f774361707328616464726573735b5d2c75696e743235365b5d29736574416c6c6f77436f7265506f6f6c46616c6c6261636b2875696e7439362c626f6f6c29736574436f6c6c61746572616c466163746f722875696e7439362c616464726573732c75696e743235362c75696e74323536297365744c69717569646174696f6e496e63656e7469766528616464726573732c75696e74323536297365744973426f72726f77416c6c6f7765642875696e7439362c616464726573732c626f6f6c29736574446576696174696f6e426f756e6465644f7261636c65286164647265737329a2646970667358221220b80c80afda590c889c163e200fc7f3834826fe74ca794e9d78a57820e66e46df64736f6c63430008190033",
|
|
2567
|
+
"deployedBytecode": "0x608060405234801561000f575f80fd5b50600436106104d2575f3560e01c80638a7dc16511610284578063bf32442d11610161578063dce15449116100d5578063f445d7031161008f578063f445d70314610bd6578063f519fc3014610c03578063f851a44014610c16578063fa6331d814610c28578063fd51a3ad14610c31578063fe40768f14610c44575f80fd5b8063dce1544914610b3b578063dcfbc0c714610b4e578063e0f6123d14610b61578063e37d4b7914610b83578063e85a296014610bba578063e875544614610bcd575f80fd5b8063d136af4411610126578063d136af4414610740578063d24febad14610ae3578063d3270f9914610af6578063d463654c14610b09578063d6ad5c3914610b10578063d7c46d2d14610b23575f80fd5b8063bf32442d14610a7e578063c32094c7146108ff578063c5b4db5514610a8f578063c5f956af14610abd578063c7ee005e14610ad0575f80fd5b80639bf34cbb116101f8578063b8324c7c116101bd578063b8324c7c146109c2578063b88d846b14610a1d578063bb82aa5e14610a30578063bb85745014610a43578063bbb8864a14610a56578063bec04f7214610a75575f80fd5b80639bf34cbb146109635780639cfdd9e614610976578063a657e57914610989578063a89766dd1461099c578063b2eafc39146109af575f80fd5b80639254f5e5116102495780639254f5e5146108ec5780639460c8b5146108ff57806394b2294b1461091257806396c990641461091b5780639bb27d621461093d5780639bd8f6e814610950575f80fd5b80638a7dc165146108855780638b3113f6146107535780638c1ac18a146108a45780639159b177146108c6578063919a3736146108d9575f80fd5b80634964f48c116103b25780635dd3fc9d1161032657806373769099116102eb57806373769099146107ed578063765513831461082d5780637938146f1461083f5780637d172bd5146108525780637dc0d1d0146108655780637fb8e8cd14610878575f80fd5b80635dd3fc9d1461079f5780635f5af1aa146107be578063607ef6c1146105a95780636662c7c9146107d1578063719f701b146107e4575f80fd5b806351a485e41161037757806351a485e414610740578063522c656b1461075357806352d84d1e14610766578063530e784f1461077957806355ee1fe1146107795780635cc4fdeb1461078c575f80fd5b80634964f48c146106d55780634a584432146106e85780634d99c776146107075780634e0853db1461071a5780634ef233fc1461072d575f80fd5b80632678224711610449578063317b0b771161040e578063317b0b771461058157806335439240146106655780634088c73e1461067857806341a18d2c14610685578063425fad58146106af57806342adb211146106c2575f80fd5b8063267822471461060d5780632a6a6065146106205780632b5d790c146105fa5780632bc7e29e146106335780632ec0412414610652575f80fd5b806312348e961161049a57806312348e961461058157806317db216314610594578063186db48f146105a957806321af4569146105bc57806324a3d622146105e757806324aaa220146105fa575f80fd5b806302c3bcbb146104d657806304ef9d581461050857806308e0225c146105115780630db4b4e51461053b57806310b9833814610544575b5f80fd5b6104f56104e4366004613244565b60276020525f908152604090205481565b6040519081526020015b60405180910390f35b6104f560225481565b6104f561051f36600461325f565b601360209081525f928352604080842090915290825290205481565b6104f5601d5481565b61057161055236600461325f565b602c60209081525f928352604080842090915290825290205460ff1681565b60405190151581526020016104ff565b6104f561058f366004613296565b610c57565b6105a76105a23660046132ba565b610c67565b005b6105a76105b736600461334a565b610d1b565b601e546105cf906001600160a01b031681565b6040516001600160a01b0390911681526020016104ff565b600a546105cf906001600160a01b031681565b6105a76106083660046133b1565b610d8c565b6001546105cf906001600160a01b031681565b61057161062e36600461342f565b610e00565b6104f5610641366004613244565b60166020525f908152604090205481565b6104f5610660366004613296565b610e96565b6104f5610673366004613465565b610f19565b6018546105719060ff1681565b6104f561069336600461325f565b601260209081525f928352604080842090915290825290205481565b6018546105719062010000900460ff1681565b6105a76106d03660046134a1565b610f50565b6105a76106e33660046134cd565b610ff8565b6104f56106f6366004613244565b601f6020525f908152604090205481565b6104f56107153660046134e7565b61112d565b6105a7610728366004613501565b61114a565b6105a761073b366004613244565b61120d565b6105a761074e36600461334a565b61133b565b6105a76107613660046134a1565b6113a6565b6105cf610774366004613296565b6113b4565b6104f5610787366004613244565b6113dc565b6104f561079a366004613501565b6113e6565b6104f56107ad366004613244565b602b6020525f908152604090205481565b6104f56107cc366004613244565b611414565b6105a76107df366004613296565b6114ab565b6104f5601c5481565b6108156107fb366004613244565b60356020525f90815260409020546001600160601b031681565b6040516001600160601b0390911681526020016104ff565b60185461057190610100900460ff1681565b6105a761084d3660046134cd565b611537565b601b546105cf906001600160a01b031681565b6004546105cf906001600160a01b031681565b6039546105719060ff1681565b6104f5610893366004613244565b60146020525f908152604090205481565b6105716108b2366004613244565b602d6020525f908152604090205460ff1681565b6104f56108d4366004613533565b61165e565b6105a76108e7366004613244565b611697565b6015546105cf906001600160a01b031681565b6104f561090d366004613244565b611703565b6104f560075481565b61092e610929366004613574565b61170d565b6040516104ff939291906135bb565b6025546105cf906001600160a01b031681565b6104f561095e3660046135e4565b6117ba565b6104f5610971366004613244565b6117e7565b6104f5610984366004613244565b61187d565b603754610815906001600160601b031681565b6105a76109aa36600461360e565b611914565b6020546105cf906001600160a01b031681565b6109f96109d0366004613244565b60106020525f90815260409020546001600160e01b03811690600160e01b900463ffffffff1682565b604080516001600160e01b03909316835263ffffffff9091166020830152016104ff565b6105a7610a2b366004613629565b611a55565b6002546105cf906001600160a01b031681565b6105a7610a51366004613244565b611bb9565b6104f5610a64366004613244565b602a6020525f908152604090205481565b6104f560175481565b6033546001600160a01b03166105cf565b610aa56ec097ce7bc90715b34b9f100000000081565b6040516001600160e01b0390911681526020016104ff565b6021546105cf906001600160a01b031681565b6031546105cf906001600160a01b031681565b6104f5610af13660046136a5565b611c4e565b6026546105cf906001600160a01b031681565b6108155f81565b6105a7610b1e36600461342f565b611db5565b6039546105cf9061010090046001600160a01b031681565b6105cf610b493660046135e4565b611e5e565b6003546105cf906001600160a01b031681565b610571610b6f366004613244565b60386020525f908152604090205460ff1681565b6109f9610b91366004613244565b60116020525f90815260409020546001600160e01b03811690600160e01b900463ffffffff1682565b610571610bc83660046136c2565b611e92565b6104f560055481565b610571610be436600461325f565b603260209081525f928352604080842090915290825290205460ff1681565b6104f5610c11366004613244565b611ed6565b5f546105cf906001600160a01b031681565b6104f5601a5481565b6104f5610c3f3660046135e4565b611f6d565b6104f5610c52366004613244565b612011565b5f610c61826120d0565b92915050565b610c88604051806060016040528060328152602001613b34603291396121aa565b6015546001600160a01b03838116911614610cae57610cae610ca98361225a565b61227c565b6001600160a01b038381165f81815260326020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527fc080966e9e93529edc1b244180c245bc60f3d86f1e690a17651a5e428746a8cd91015b60405180910390a3505050565b610d868484808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250506040805160208088028281018201909352878252909350879250869182918501908490808284375f920191909152506122c192505050565b50505050565b610df98585808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250506040805160208089028281018201909352888252909350889250879182918501908490808284375f92019190915250869250612411915050565b5050505050565b5f610e3f6040518060400160405280601881526020017f5f73657450726f746f636f6c50617573656428626f6f6c2900000000000000008152506121aa565b60188054831515620100000262ff0000199091161790556040517fd7500633dd3ddd74daa7af62f8c8404c7fe4a81da179998db851696bed004b3890610e8a90841515815260200190565b60405180910390a15090565b5f60175482808203610ec35760405162461bcd60e51b8152600401610eba906136f1565b60405180910390fd5b610ecb6124a0565b601780549085905560408051828152602081018790527f73747d68b346dce1e932bcd238282e7ac84c01569e1f8d0469c222fdc6e9d5a491015b60405180910390a15f9350505b5050919050565b5f610f3b6040518060600160405280602f8152602001613b8f602f91396121aa565b610f468484846124ec565b90505b9392505050565b610f716040518060600160405280602a8152602001613bbe602a91396121aa565b610f7a8261263e565b6001600160a01b0382165f9081526038602052604090205481151560ff909116151503610fa5575050565b6001600160a01b0382165f81815260386020526040808220805460ff191685151590811790915590519092917f1f4df5032f431b9890646a781be28b0d693e581666d1a80be27ae3959069172291a35050565b6110366040518060400160405280601a81526020017f736574506f6f6c4163746976652875696e7439362c626f6f6c290000000000008152506121aa565b6037546001600160601b03908116908316111561107157604051632db8671b60e11b81526001600160601b0383166004820152602401610eba565b6001600160601b03821661109857604051630203217b60e61b815260040160405180910390fd5b6001600160601b0382165f908152603660205260409020600281015482151560ff9091161515036110c857505050565b60028101546040805160ff9092161515825283151560208301526001600160601b038516917f75e42fceb039532886a9d75717e843bfef67fd7f6f91f0fc5b1d48e9ce8a1ba9910160405180910390a2600201805460ff191691151591909117905550565b6001600160a01b031660a09190911b6001600160a01b0319161790565b601b546001600160a01b039081169084908116820361117b5760405162461bcd60e51b8152600401610eba9061373c565b6111836124a0565b61118c8561263e565b601b546001600160a01b0316156111a5576111a561268c565b601b80546001600160a01b0319166001600160a01b038716908117909155601c859055601d84905560408051868152602081018690527f7059037d74ee16b0fb06a4a30f3348dd2635f301f92e373c92899a25a522ef6e910160405180910390a25050505050565b6112156124a0565b61121e8161263e565b5f816001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa15801561125b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061127f919061377e565b6033549091506001600160a01b038083169116146112df5760405162461bcd60e51b815260206004820152601a60248201527f696e76616c6964207876732076746f6b656e20616464726573730000000000006044820152606401610eba565b6034546040516001600160a01b038085169216907f2565e1579c0926afb7113edbfd85373e85cadaa3e0346f04de19686a2bb86ed1905f90a350603480546001600160a01b0319166001600160a01b0392909216919091179055565b610d868484808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250506040805160208088028281018201909352878252909350879250869182918501908490808284375f9201919091525061281b92505050565b6113b0828261296b565b5050565b600d81815481106113c3575f80fd5b5f918252602090912001546001600160a01b0316905081565b5f610c6182612a0b565b5f6114086040518060600160405280602c8152602001613c34602c91396121aa565b610f465f858585612aa2565b600a545f906001600160a01b03908116908390811682036114475760405162461bcd60e51b8152600401610eba9061373c565b61144f6124a0565b6114588461263e565b600a80546001600160a01b038681166001600160a01b03198316179092556040519116907f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e90610f059083908890613799565b601a54818082036114ce5760405162461bcd60e51b8152600401610eba906136f1565b6114d66124a0565b601b546001600160a01b0316156114ef576114ef61268c565b601a80549084905560408051828152602081018690527fe81d4ac15e5afa1e708e66664eddc697177423d950d133bda8262d8885e6da3b91015b60405180910390a150505050565b611558604051806060016040528060258152602001613c89602591396121aa565b6037546001600160601b03908116908316111561159357604051632db8671b60e11b81526001600160601b0383166004820152602401610eba565b6001600160601b0382166115ba57604051630203217b60e61b815260040160405180910390fd5b6001600160601b0382165f908152603660205260409020600281015482151561010090910460ff161515036115ee57505050565b60028101546040805161010090920460ff161515825283151560208301526001600160601b038516917f9d2a9183b06e3492f91d3d88ae222e700c8873dd0068f9c3fc783eccb96a1ec4910160405180910390a260020180549115156101000261ff001990921691909117905550565b5f611680604051806060016040528060338152602001613cae603391396121aa565b61168c85858585612aa2565b90505b949350505050565b61169f6124a0565b6116a88161263e565b6033546040516001600160a01b038084169216907ffe7fd0d872def0f65050e9f38fc6691d0c192c694a56f09b04bec5fb2ea61f2b905f90a3603380546001600160a01b0319166001600160a01b0392909216919091179055565b5f610c6182612cbf565b60366020525f9081526040902080548190611727906137b3565b80601f0160208091040260200160405190810160405280929190818152602001828054611753906137b3565b801561179e5780601f106117755761010080835404028352916020019161179e565b820191905f5260205f20905b81548152906001019060200180831161178157829003601f168201915b5050506002909301549192505060ff8082169161010090041683565b5f6117dc604051806060016040528060288152602001613ce1602891396121aa565b610f495f84846124ec565b6026545f906001600160a01b039081169083908116820361181a5760405162461bcd60e51b8152600401610eba9061373c565b6118226124a0565b61182b8461263e565b602680546001600160a01b038681166001600160a01b0319831681179093556040519116917f0f7eb572d1b3053a0a3a33c04151364cf88d163182a5e4e1088cb8e52321e08a91610f05918491613799565b6015545f906001600160a01b03908116908390811682036118b05760405162461bcd60e51b8152600401610eba9061373c565b6118b86124a0565b6118c18461263e565b601580546001600160a01b038681166001600160a01b03198316179092556040519116907fe1ddcb2dab8e5b03cfc8c67a0d5861d91d16f7bd2612fd381faf4541d212c9b290610f059083908890613799565b611935604051806060016040528060278152602001613d09602791396121aa565b6037546001600160601b03908116908416111561197057604051632db8671b60e11b81526001600160601b0384166004820152602401610eba565b5f61197b848461112d565b5f81815260096020526040902080549192509060ff166119ae57604051630665210960e21b815260040160405180910390fd5b82151581600601600c9054906101000a900460ff161515036119d1575050505050565b600681015460408051600160601b90920460ff161515825284151560208301526001600160a01b038616916001600160601b038816917fe40f9c4af130bdb5bd1650ab4bc918dba9d900fa94685f0113e72a6cfe6c5fcc910160405180910390a36006018054921515600160601b0260ff60601b1990931692909217909155505050565b611a936040518060400160405280601b81526020017f736574506f6f6c4c6162656c2875696e7439362c737472696e672900000000008152506121aa565b6037546001600160601b039081169084161115611ace57604051632db8671b60e11b81526001600160601b0384166004820152602401610eba565b6001600160601b038316611af557604051630203217b60e61b815260040160405180910390fd5b5f819003611b165760405163522e397360e11b815260040160405180910390fd5b6001600160601b0383165f90815260366020526040908190209051611b3e90849084906137eb565b60405190819003812090611b539083906137fa565b604051809103902003611b665750505050565b836001600160601b03167f1ebc260ee8077871ff0b70b184ff9dac4ecee8b0f7dcc4f3a3f5068549f5078e825f018585604051611ba593929190613894565b60405180910390a280610df983858361398b565b6025546001600160a01b0390811690829081168203611bea5760405162461bcd60e51b8152600401610eba9061373c565b611bf26124a0565b611bfb8361263e565b602580546001600160a01b038581166001600160a01b03198316179092556040519116907fa5ea5616d5f6dbbaa62fdfcf3856723216eed485c394d9e51ec8e6d40e1d1ac1906115299083908790613799565b6020545f90611c65906001600160a01b0316612d34565b670de0b6b3a76400008210611cae5760405162461bcd60e51b815260206004820152600f60248201526e70657263656e74203e3d203130302560881b6044820152606401610eba565b611cb78461263e565b611cc08361263e565b6020805460218054602280546001600160a01b03198086166001600160a01b038c8116919091179097558316898716179093558690556040519284169316917f29f06ea15931797ebaed313d81d100963dc22cb213cb4ce2737b5a62b1a8b1e890611d2e9085908a90613799565b60405180910390a17f8de763046d7b8f08b6c3d03543de1d615309417842bb5d2d62f110f65809ddac8287604051611d67929190613799565b60405180910390a160408051828152602081018790527f0893f8f4101baaabbeb513f96761e7a36eb837403c82cc651c292a4abdc94ed7910160405180910390a15f5b979650505050505050565b611df36040518060400160405280601881526020017f736574466c6173684c6f616e50617573656428626f6f6c2900000000000000008152506121aa565b60395481151560ff909116151503611e085750565b6039546040805160ff9092161515825282151560208301527f79bcfb2700d56371c7684799f99d64cbcd91f1e360f8048a42c9ba534be7c0a8910160405180910390a16039805460ff1916911515919091179055565b6008602052815f5260405f208181548110611e77575f80fd5b5f918252602090912001546001600160a01b03169150829050565b6001600160a01b0382165f90815260296020526040812081836008811115611ebc57611ebc613728565b815260208101919091526040015f205460ff169392505050565b6028545f906001600160a01b0390811690839081168203611f095760405162461bcd60e51b8152600401610eba9061373c565b611f116124a0565b611f1a8461263e565b602880546001600160a01b038681166001600160a01b03198316179092556040519116907f0f1eca7612e020f6e4582bcead0573eba4b5f7b56668754c6aed82ef12057dd490610f059083908890613799565b5f611f76612d8f565b60185460ff16158015611f915750601854610100900460ff16155b611fcd5760405162461bcd60e51b815260206004820152600d60248201526c159052481a5cc81c185d5cd959609a1b6044820152606401610eba565b6015546001600160a01b03163314611ff257611feb600e6016612ddd565b9050610c61565b6001600160a01b0383165f908152601660205260408120839055610f49565b6039545f906001600160a01b036101009091048116908390811682036120495760405162461bcd60e51b8152600401610eba9061373c565b61206a604051806060016040528060228152602001613d30602291396121aa565b6120738461263e565b603980546001600160a01b03868116610100908102610100600160a81b03198416179093556040519290910416907fc4877d82ec0586c93fbd01eb65785e064f0c31b594e7f413e5f16502f25cf27390610f059083908890613799565b5f600554828082036120f45760405162461bcd60e51b8152600401610eba906136f1565b6120fc6124a0565b604080516020808201835286825282518082018452670c7d713b49da00008152835191820190935266b1a2bc2ec500008152815183519293921080612142575082518151115b1561215c57612152600580612ddd565b9550505050610f12565b600580549088905560408051828152602081018a90527f3b9670cf975d26958e754b57098eaa2ac914d8d2a31b83257997b9f346110fd9910160405180910390a15f98975050505050505050565b6028546040516318c5e8ab60e01b81526001600160a01b03909116906318c5e8ab906121dc9033908590600401613a45565b602060405180830381865afa1580156121f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061221b9190613a68565b6122575760405162461bcd60e51b815260206004820152600d60248201526c1858d8d95cdcc819195b9a5959609a1b6044820152606401610eba565b50565b5f60095f6122685f8561112d565b81526020019081526020015f209050919050565b805460ff166122575760405162461bcd60e51b81526020600482015260116024820152701b585c9ad95d081b9bdd081b1a5cdd1959607a1b6044820152606401610eba565b6122e2604051806060016040528060298152602001613c60602991396121aa565b8151815181158015906122f457508082145b6123305760405162461bcd60e51b815260206004820152600d60248201526c1a5b9d985b1a59081a5b9c1d5d609a1b6044820152606401610eba565b5f5b82811015610df95783818151811061234c5761234c613a83565b6020026020010151601f5f87848151811061236957612369613a83565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f20819055508481815181106123a6576123a6613a83565b60200260200101516001600160a01b03167f6f1951b2aad10f3fc81b86d91105b413a5b3f847a34bbc5ce1904201b14438f68583815181106123ea576123ea613a83565b602002602001015160405161240191815260200190565b60405180910390a2600101612332565b612432604051806060016040528060298152602001613b66602991396121aa565b825182515f5b82811015612498575f5b8281101561248f5761248787838151811061245f5761245f613a83565b602002602001015187838151811061247957612479613a83565b602002602001015187612e54565b600101612442565b50600101612438565b505050505050565b5f546001600160a01b031633146124ea5760405162461bcd60e51b815260206004820152600e60248201526d37b7363c9030b236b4b71031b0b760911b6044820152606401610eba565b565b5f60095f6124fa868661112d565b81526020019081526020015f20600501548280820361252b5760405162461bcd60e51b8152600401610eba906136f1565b6037546001600160601b03908116908716111561256657604051632db8671b60e11b81526001600160601b0387166004820152602401610eba565b5f60095f612574898961112d565b81526020019081526020015f20905061258c8161227c565b670de0b6b3a76400008510156125d75760405162461bcd60e51b815260206004820152601060248201526f0d2dcc6cadce8d2ecca40784062ca62760831b6044820152606401610eba565b856001600160a01b0316876001600160601b03167fc1d7bc090f3a87255c2f4e56f66d1b7a49683d279f77921b1701aa5d733ef745836005015488604051612629929190918252602082015260400190565b60405180910390a3600581018590555f611daa565b6001600160a01b0381166122575760405162461bcd60e51b815260206004820152601560248201527463616e2774206265207a65726f206164647265737360581b6044820152606401610eba565b601c54158061269c5750601c5443105b156126a357565b6033546040516370a0823160e01b81523060048201526001600160a01b03909116905f9082906370a0823190602401602060405180830381865afa1580156126ed573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127119190613a97565b9050805f0361271e575050565b5f8061272c43601c54612ef8565b90505f61273b601a5483612f31565b905080841061274c57809250612750565b8392505b601d54831015612761575050505050565b43601c55601b5461277f906001600160a01b03878116911685612f72565b6040518381527ff6d4b8f74d85a6e2d7a50225957b8a6cfec69ad92f5905627260541aa0a5565d9060200160405180910390a1601b5f9054906101000a90046001600160a01b03166001600160a01b031663faa1809e6040518163ffffffff1660e01b81526004015f604051808303815f87803b1580156127fe575f80fd5b505af1158015612810573d5f803e3d5ffd5b505050505050505050565b61283c604051806060016040528060298152602001613be8602991396121aa565b81518151811580159061284e57508082145b61288a5760405162461bcd60e51b815260206004820152600d60248201526c1a5b9d985b1a59081a5b9c1d5d609a1b6044820152606401610eba565b5f5b82811015610df9578381815181106128a6576128a6613a83565b602002602001015160275f8784815181106128c3576128c3613a83565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f208190555084818151811061290057612900613a83565b60200260200101516001600160a01b03167f9e0ad9cee10bdf36b7fbd38910c0bdff0f275ace679b45b922381c2723d676f885838151811061294457612944613a83565b602002602001015160405161295b91815260200190565b60405180910390a260010161288c565b61298c604051806060016040528060238152602001613c11602391396121aa565b6015546001600160a01b038381169116146129ad576129ad610ca98361225a565b6001600160a01b0382165f818152602d6020908152604091829020805460ff191685151590811790915591519182527f03561d5280ebb02280893b1d60978e4a27e7654a149c5d0e7c2cf65389ce1694910160405180910390a25050565b6004545f906001600160a01b0390811690839081168203612a3e5760405162461bcd60e51b8152600401610eba9061373c565b612a466124a0565b612a4f8461263e565b600480546001600160a01b038681166001600160a01b03198316179092556040519116907fd52b2b9b7e9ee655fcb95d2e5b9e0c9f69e7ef2b8e9d2d0ea78402d576d22e2290610f059083908890613799565b5f612aac8461263e565b6037546001600160601b039081169086161115612ae757604051632db8671b60e11b81526001600160601b0386166004820152602401610eba565b5f60095f612af5888861112d565b81526020019081526020015f209050612b0d8161227c565b670de0b6b3a7640000841115612b3157612b2960066008612ddd565b91505061168f565b8315801590612bab57506004805460405163fc57d4df60e01b81526001600160a01b038881169382019390935291169063fc57d4df90602401602060405180830381865afa158015612b85573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612ba99190613a97565b155b15612bbc57612b29600d6009612ddd565b670de0b6b3a7640000831115612bd857612b2960146019612ddd565b83831015612bec57612b296014601a612ddd565b6001810154848114612c4f576001820185905560408051828152602081018790526001600160a01b038816916001600160601b038a16917f0d1a615379dc62cec7bc63b7e313a07ed659918f4ad3720b3af8041b305146f2910160405180910390a35b6004820154848114612cb2576004830185905560408051828152602081018790526001600160a01b038916916001600160601b038b16917fc90f7b48c299a8d58b0b9e2756e27773c6fb1daab159af052d6c5b791bc7eef7910160405180910390a35b5f98975050505050505050565b5f612cc86124a0565b612cd18261263e565b603180546001600160a01b038481166001600160a01b03198316179092556040519116907fcb20dab7409e4fb972d9adccb39530520b226ce6940d85c9523a499b950b6ea390612d249083908690613799565b60405180910390a15f9392505050565b5f546001600160a01b031633148061221b5750336001600160a01b038216146122575760405162461bcd60e51b815260206004820152600d60248201526c1858d8d95cdcc819195b9a5959609a1b6044820152606401610eba565b60185462010000900460ff16156124ea5760405162461bcd60e51b81526020600482015260126024820152711c1c9bdd1bd8dbdb081a5cc81c185d5cd95960721b6044820152606401610eba565b5f7f45b96fe442630264581b197e84bbada861235052c5a1aadfff9ea4e40a969aa0836014811115612e1157612e11613728565b83601a811115612e2357612e23613728565b6040805192835260208301919091525f9082015260600160405180910390a1826014811115610f4957610f49613728565b612e60610ca98461225a565b6001600160a01b0383165f9081526029602052604081208291846008811115612e8b57612e8b613728565b815260208101919091526040015f20805460ff1916911515919091179055816008811115612ebb57612ebb613728565b836001600160a01b03167f35007a986bcd36d2f73fc7f1b73762e12eadb4406dd163194950fd3b5a6a827d83604051610d0e911515815260200190565b5f610f498383604051806040016040528060158152602001747375627472616374696f6e20756e646572666c6f7760581b815250612fc9565b5f610f4983836040518060400160405280601781526020017f6d756c7469706c69636174696f6e206f766572666c6f77000000000000000000815250612ff7565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052612fc4908490613050565b505050565b5f8184841115612fec5760405162461bcd60e51b8152600401610eba9190613aae565b50610f468385613ad4565b5f831580613003575082155b1561300f57505f610f49565b5f61301a8486613ae7565b9050836130278683613afe565b1483906130475760405162461bcd60e51b8152600401610eba9190613aae565b50949350505050565b5f6130a4826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166131239092919063ffffffff16565b905080515f14806130c45750808060200190518101906130c49190613a68565b612fc45760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610eba565b6060610f4684845f85855f80866001600160a01b031685876040516131489190613b1d565b5f6040518083038185875af1925050503d805f8114613182576040519150601f19603f3d011682016040523d82523d5f602084013e613187565b606091505b5091509150611daa87838387606083156132015782515f036131fa576001600160a01b0385163b6131fa5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610eba565b508161168f565b61168f83838151156132165781518083602001fd5b8060405162461bcd60e51b8152600401610eba9190613aae565b6001600160a01b0381168114612257575f80fd5b5f60208284031215613254575f80fd5b8135610f4981613230565b5f8060408385031215613270575f80fd5b823561327b81613230565b9150602083013561328b81613230565b809150509250929050565b5f602082840312156132a6575f80fd5b5035919050565b8015158114612257575f80fd5b5f805f606084860312156132cc575f80fd5b83356132d781613230565b925060208401356132e781613230565b915060408401356132f7816132ad565b809150509250925092565b5f8083601f840112613312575f80fd5b50813567ffffffffffffffff811115613329575f80fd5b6020830191508360208260051b8501011115613343575f80fd5b9250929050565b5f805f806040858703121561335d575f80fd5b843567ffffffffffffffff80821115613374575f80fd5b61338088838901613302565b90965094506020870135915080821115613398575f80fd5b506133a587828801613302565b95989497509550505050565b5f805f805f606086880312156133c5575f80fd5b853567ffffffffffffffff808211156133dc575f80fd5b6133e889838a01613302565b90975095506020880135915080821115613400575f80fd5b5061340d88828901613302565b9094509250506040860135613421816132ad565b809150509295509295909350565b5f6020828403121561343f575f80fd5b8135610f49816132ad565b80356001600160601b0381168114613460575f80fd5b919050565b5f805f60608486031215613477575f80fd5b6134808461344a565b9250602084013561349081613230565b929592945050506040919091013590565b5f80604083850312156134b2575f80fd5b82356134bd81613230565b9150602083013561328b816132ad565b5f80604083850312156134de575f80fd5b6134bd8361344a565b5f80604083850312156134f8575f80fd5b61327b8361344a565b5f805f60608486031215613513575f80fd5b833561351e81613230565b95602085013595506040909401359392505050565b5f805f8060808587031215613546575f80fd5b61354f8561344a565b9350602085013561355f81613230565b93969395505050506040820135916060013590565b5f60208284031215613584575f80fd5b610f498261344a565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b606081525f6135cd606083018661358d565b931515602083015250901515604090910152919050565b5f80604083850312156135f5575f80fd5b823561360081613230565b946020939093013593505050565b5f805f60608486031215613620575f80fd5b6132d78461344a565b5f805f6040848603121561363b575f80fd5b6136448461344a565b9250602084013567ffffffffffffffff80821115613660575f80fd5b818601915086601f830112613673575f80fd5b813581811115613681575f80fd5b876020828501011115613692575f80fd5b6020830194508093505050509250925092565b5f805f606084860312156136b7575f80fd5b833561348081613230565b5f80604083850312156136d3575f80fd5b82356136de81613230565b915060208301356009811061328b575f80fd5b6020808252601e908201527f6f6c642076616c75652069732073616d65206173206e65772076616c75650000604082015260600190565b634e487b7160e01b5f52602160045260245ffd5b60208082526022908201527f6f6c6420616464726573732069732073616d65206173206e6577206164647265604082015261737360f01b606082015260800190565b5f6020828403121561378e575f80fd5b8151610f4981613230565b6001600160a01b0392831681529116602082015260400190565b600181811c908216806137c757607f821691505b6020821081036137e557634e487b7160e01b5f52602260045260245ffd5b50919050565b818382375f9101908152919050565b5f808354613807816137b3565b6001828116801561381f576001811461383457613860565b60ff1984168752821515830287019450613860565b875f526020805f205f5b858110156138575781548a82015290840190820161383e565b50505082870194505b50929695505050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f8085546138a5816137b3565b806040860152606060018084165f81146138c657600181146138e257613911565b60ff1985166060890152606084151560051b8901019550613911565b8a5f526020805f205f5b868110156139075781548b82018701529084019082016138ec565b8a01606001975050505b5050505050828103602084015261392981858761386c565b9695505050505050565b634e487b7160e01b5f52604160045260245ffd5b601f821115612fc457805f5260205f20601f840160051c8101602085101561396c5750805b601f840160051c820191505b81811015610df9575f8155600101613978565b67ffffffffffffffff8311156139a3576139a3613933565b6139b7836139b183546137b3565b83613947565b5f601f8411600181146139e8575f85156139d15750838201355b5f19600387901b1c1916600186901b178355610df9565b5f83815260208120601f198716915b82811015613a1757868501358255602094850194600190920191016139f7565b5086821015613a33575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160a01b03831681526040602082018190525f90610f469083018461358d565b5f60208284031215613a78575f80fd5b8151610f49816132ad565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215613aa7575f80fd5b5051919050565b602081525f610f49602083018461358d565b634e487b7160e01b5f52601160045260245ffd5b81810381811115610c6157610c61613ac0565b8082028115828204841417610c6157610c61613ac0565b5f82613b1857634e487b7160e01b5f52601260045260245ffd5b500490565b5f82518060208501845e5f92019182525091905056fe5f736574466f726365644c69717569646174696f6e466f725573657228616464726573732c616464726573732c626f6f6c295f736574416374696f6e7350617573656428616464726573735b5d2c75696e74385b5d2c626f6f6c297365744c69717569646174696f6e496e63656e746976652875696e7439362c616464726573732c75696e743235362973657457686974654c697374466c6173684c6f616e4163636f756e7428616464726573732c626f6f6c295f7365744d61726b6574537570706c794361707328616464726573735b5d2c75696e743235365b5d295f736574466f726365644c69717569646174696f6e28616464726573732c626f6f6c29736574436f6c6c61746572616c466163746f7228616464726573732c75696e743235362c75696e74323536295f7365744d61726b6574426f72726f774361707328616464726573735b5d2c75696e743235365b5d29736574416c6c6f77436f7265506f6f6c46616c6c6261636b2875696e7439362c626f6f6c29736574436f6c6c61746572616c466163746f722875696e7439362c616464726573732c75696e743235362c75696e74323536297365744c69717569646174696f6e496e63656e7469766528616464726573732c75696e74323536297365744973426f72726f77416c6c6f7765642875696e7439362c616464726573732c626f6f6c29736574446576696174696f6e426f756e6465644f7261636c65286164647265737329a2646970667358221220b80c80afda590c889c163e200fc7f3834826fe74ca794e9d78a57820e66e46df64736f6c63430008190033",
|
|
2517
2568
|
"linkReferences": {},
|
|
2518
2569
|
"deployedLinkReferences": {}
|
|
2519
2570
|
}
|
package/artifacts/contracts/Comptroller/Diamond/facets/XVSRewardsHelper.sol/XVSRewardsHelper.json
CHANGED
|
@@ -544,6 +544,19 @@
|
|
|
544
544
|
"stateMutability": "view",
|
|
545
545
|
"type": "function"
|
|
546
546
|
},
|
|
547
|
+
{
|
|
548
|
+
"inputs": [],
|
|
549
|
+
"name": "deviationBoundedOracle",
|
|
550
|
+
"outputs": [
|
|
551
|
+
{
|
|
552
|
+
"internalType": "contract IDeviationBoundedOracle",
|
|
553
|
+
"name": "",
|
|
554
|
+
"type": "address"
|
|
555
|
+
}
|
|
556
|
+
],
|
|
557
|
+
"stateMutability": "view",
|
|
558
|
+
"type": "function"
|
|
559
|
+
},
|
|
547
560
|
{
|
|
548
561
|
"inputs": [],
|
|
549
562
|
"name": "flashLoanPaused",
|
|
@@ -1150,8 +1163,8 @@
|
|
|
1150
1163
|
"type": "function"
|
|
1151
1164
|
}
|
|
1152
1165
|
],
|
|
1153
|
-
"bytecode": "
|
|
1154
|
-
"deployedBytecode": "
|
|
1166
|
+
"bytecode": "0x6080604052348015600e575f80fd5b50610b458061001c5f395ff3fe608060405234801561000f575f80fd5b50600436106102cb575f3560e01c806394b2294b1161017b578063c7ee005e116100e4578063e0f6123d1161009e578063e875544611610079578063e8755446146107b5578063f445d703146107be578063f851a440146107eb578063fa6331d8146107fd575f80fd5b8063e0f6123d14610749578063e37d4b791461076b578063e85a2960146107a2575f80fd5b8063c7ee005e146106de578063d3270f99146106f1578063d463654c14610704578063d7c46d2d1461070b578063dce1544914610723578063dcfbc0c714610736575f80fd5b8063bb82aa5e11610135578063bb82aa5e14610651578063bbb8864a14610664578063bec04f7214610683578063bf32442d1461068c578063c5b4db551461069d578063c5f956af146106cb575f80fd5b806394b2294b1461059257806396c990641461059b5780639bb27d62146105bd578063a657e579146105d0578063b2eafc39146105e3578063b8324c7c146105f6575f80fd5b80634a5844321161023757806376551383116101f15780637fb8e8cd116101cc5780637fb8e8cd146105315780638a7dc1651461053e5780638c1ac18a1461055d5780639254f5e51461057f575f80fd5b806376551383146104f95780637d172bd51461050b5780637dc0d1d01461051e575f80fd5b80634a584432146104345780634d99c7761461045357806352d84d1e1461047e5780635dd3fc9d14610491578063719f701b146104b057806373769099146104b9575f80fd5b806324a3d6221161028857806324a3d622146103a557806326782247146103b85780632bc7e29e146103cb5780634088c73e146103ea57806341a18d2c146103f7578063425fad5814610421575f80fd5b806302c3bcbb146102cf57806304ef9d581461030157806308e0225c1461030a5780630db4b4e51461033457806310b983381461033d57806321af45691461037a575b5f80fd5b6102ee6102dd36600461096e565b60276020525f908152604090205481565b6040519081526020015b60405180910390f35b6102ee60225481565b6102ee61031836600461098e565b601360209081525f928352604080842090915290825290205481565b6102ee601d5481565b61036a61034b36600461098e565b602c60209081525f928352604080842090915290825290205460ff1681565b60405190151581526020016102f8565b601e5461038d906001600160a01b031681565b6040516001600160a01b0390911681526020016102f8565b600a5461038d906001600160a01b031681565b60015461038d906001600160a01b031681565b6102ee6103d936600461096e565b60166020525f908152604090205481565b60185461036a9060ff1681565b6102ee61040536600461098e565b601260209081525f928352604080842090915290825290205481565b60185461036a9062010000900460ff1681565b6102ee61044236600461096e565b601f6020525f908152604090205481565b6102ee6104613660046109d5565b6001600160a01b031660a09190911b6001600160a01b0319161790565b61038d61048c3660046109ef565b610806565b6102ee61049f36600461096e565b602b6020525f908152604090205481565b6102ee601c5481565b6104e16104c736600461096e565b60356020525f90815260409020546001600160601b031681565b6040516001600160601b0390911681526020016102f8565b60185461036a90610100900460ff1681565b601b5461038d906001600160a01b031681565b60045461038d906001600160a01b031681565b60395461036a9060ff1681565b6102ee61054c36600461096e565b60146020525f908152604090205481565b61036a61056b36600461096e565b602d6020525f908152604090205460ff1681565b60155461038d906001600160a01b031681565b6102ee60075481565b6105ae6105a9366004610a06565b61082e565b6040516102f893929190610a1f565b60255461038d906001600160a01b031681565b6037546104e1906001600160601b031681565b60205461038d906001600160a01b031681565b61062d61060436600461096e565b60106020525f90815260409020546001600160e01b03811690600160e01b900463ffffffff1682565b604080516001600160e01b03909316835263ffffffff9091166020830152016102f8565b60025461038d906001600160a01b031681565b6102ee61067236600461096e565b602a6020525f908152604090205481565b6102ee60175481565b6033546001600160a01b031661038d565b6106b36ec097ce7bc90715b34b9f100000000081565b6040516001600160e01b0390911681526020016102f8565b60215461038d906001600160a01b031681565b60315461038d906001600160a01b031681565b60265461038d906001600160a01b031681565b6104e15f81565b60395461038d9061010090046001600160a01b031681565b61038d610731366004610a63565b6108db565b60035461038d906001600160a01b031681565b61036a61075736600461096e565b60386020525f908152604090205460ff1681565b61062d61077936600461096e565b60116020525f90815260409020546001600160e01b03811690600160e01b900463ffffffff1682565b61036a6107b0366004610a8b565b61090f565b6102ee60055481565b61036a6107cc36600461098e565b603260209081525f928352604080842090915290825290205460ff1681565b5f5461038d906001600160a01b031681565b6102ee601a5481565b600d8181548110610815575f80fd5b5f918252602090912001546001600160a01b0316905081565b60366020525f908152604090208054819061084890610ac3565b80601f016020809104026020016040519081016040528092919081815260200182805461087490610ac3565b80156108bf5780601f10610896576101008083540402835291602001916108bf565b820191905f5260205f20905b8154815290600101906020018083116108a257829003601f168201915b5050506002909301549192505060ff8082169161010090041683565b6008602052815f5260405f2081815481106108f4575f80fd5b5f918252602090912001546001600160a01b03169150829050565b6001600160a01b0382165f9081526029602052604081208183600881111561093957610939610afb565b815260208101919091526040015f205460ff169392505050565b80356001600160a01b0381168114610969575f80fd5b919050565b5f6020828403121561097e575f80fd5b61098782610953565b9392505050565b5f806040838503121561099f575f80fd5b6109a883610953565b91506109b660208401610953565b90509250929050565b80356001600160601b0381168114610969575f80fd5b5f80604083850312156109e6575f80fd5b6109a8836109bf565b5f602082840312156109ff575f80fd5b5035919050565b5f60208284031215610a16575f80fd5b610987826109bf565b606081525f84518060608401528060208701608085015e5f60808285018101919091529415156020840152921515604083015250601f909101601f19160101919050565b5f8060408385031215610a74575f80fd5b610a7d83610953565b946020939093013593505050565b5f8060408385031215610a9c575f80fd5b610aa583610953565b9150602083013560098110610ab8575f80fd5b809150509250929050565b600181811c90821680610ad757607f821691505b602082108103610af557634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52602160045260245ffdfea26469706673582212207e54b17a146b2a9ffc7d168a6e805124479d606d99cff670c1f42d6303bc8d0a64736f6c63430008190033",
|
|
1167
|
+
"deployedBytecode": "0x608060405234801561000f575f80fd5b50600436106102cb575f3560e01c806394b2294b1161017b578063c7ee005e116100e4578063e0f6123d1161009e578063e875544611610079578063e8755446146107b5578063f445d703146107be578063f851a440146107eb578063fa6331d8146107fd575f80fd5b8063e0f6123d14610749578063e37d4b791461076b578063e85a2960146107a2575f80fd5b8063c7ee005e146106de578063d3270f99146106f1578063d463654c14610704578063d7c46d2d1461070b578063dce1544914610723578063dcfbc0c714610736575f80fd5b8063bb82aa5e11610135578063bb82aa5e14610651578063bbb8864a14610664578063bec04f7214610683578063bf32442d1461068c578063c5b4db551461069d578063c5f956af146106cb575f80fd5b806394b2294b1461059257806396c990641461059b5780639bb27d62146105bd578063a657e579146105d0578063b2eafc39146105e3578063b8324c7c146105f6575f80fd5b80634a5844321161023757806376551383116101f15780637fb8e8cd116101cc5780637fb8e8cd146105315780638a7dc1651461053e5780638c1ac18a1461055d5780639254f5e51461057f575f80fd5b806376551383146104f95780637d172bd51461050b5780637dc0d1d01461051e575f80fd5b80634a584432146104345780634d99c7761461045357806352d84d1e1461047e5780635dd3fc9d14610491578063719f701b146104b057806373769099146104b9575f80fd5b806324a3d6221161028857806324a3d622146103a557806326782247146103b85780632bc7e29e146103cb5780634088c73e146103ea57806341a18d2c146103f7578063425fad5814610421575f80fd5b806302c3bcbb146102cf57806304ef9d581461030157806308e0225c1461030a5780630db4b4e51461033457806310b983381461033d57806321af45691461037a575b5f80fd5b6102ee6102dd36600461096e565b60276020525f908152604090205481565b6040519081526020015b60405180910390f35b6102ee60225481565b6102ee61031836600461098e565b601360209081525f928352604080842090915290825290205481565b6102ee601d5481565b61036a61034b36600461098e565b602c60209081525f928352604080842090915290825290205460ff1681565b60405190151581526020016102f8565b601e5461038d906001600160a01b031681565b6040516001600160a01b0390911681526020016102f8565b600a5461038d906001600160a01b031681565b60015461038d906001600160a01b031681565b6102ee6103d936600461096e565b60166020525f908152604090205481565b60185461036a9060ff1681565b6102ee61040536600461098e565b601260209081525f928352604080842090915290825290205481565b60185461036a9062010000900460ff1681565b6102ee61044236600461096e565b601f6020525f908152604090205481565b6102ee6104613660046109d5565b6001600160a01b031660a09190911b6001600160a01b0319161790565b61038d61048c3660046109ef565b610806565b6102ee61049f36600461096e565b602b6020525f908152604090205481565b6102ee601c5481565b6104e16104c736600461096e565b60356020525f90815260409020546001600160601b031681565b6040516001600160601b0390911681526020016102f8565b60185461036a90610100900460ff1681565b601b5461038d906001600160a01b031681565b60045461038d906001600160a01b031681565b60395461036a9060ff1681565b6102ee61054c36600461096e565b60146020525f908152604090205481565b61036a61056b36600461096e565b602d6020525f908152604090205460ff1681565b60155461038d906001600160a01b031681565b6102ee60075481565b6105ae6105a9366004610a06565b61082e565b6040516102f893929190610a1f565b60255461038d906001600160a01b031681565b6037546104e1906001600160601b031681565b60205461038d906001600160a01b031681565b61062d61060436600461096e565b60106020525f90815260409020546001600160e01b03811690600160e01b900463ffffffff1682565b604080516001600160e01b03909316835263ffffffff9091166020830152016102f8565b60025461038d906001600160a01b031681565b6102ee61067236600461096e565b602a6020525f908152604090205481565b6102ee60175481565b6033546001600160a01b031661038d565b6106b36ec097ce7bc90715b34b9f100000000081565b6040516001600160e01b0390911681526020016102f8565b60215461038d906001600160a01b031681565b60315461038d906001600160a01b031681565b60265461038d906001600160a01b031681565b6104e15f81565b60395461038d9061010090046001600160a01b031681565b61038d610731366004610a63565b6108db565b60035461038d906001600160a01b031681565b61036a61075736600461096e565b60386020525f908152604090205460ff1681565b61062d61077936600461096e565b60116020525f90815260409020546001600160e01b03811690600160e01b900463ffffffff1682565b61036a6107b0366004610a8b565b61090f565b6102ee60055481565b61036a6107cc36600461098e565b603260209081525f928352604080842090915290825290205460ff1681565b5f5461038d906001600160a01b031681565b6102ee601a5481565b600d8181548110610815575f80fd5b5f918252602090912001546001600160a01b0316905081565b60366020525f908152604090208054819061084890610ac3565b80601f016020809104026020016040519081016040528092919081815260200182805461087490610ac3565b80156108bf5780601f10610896576101008083540402835291602001916108bf565b820191905f5260205f20905b8154815290600101906020018083116108a257829003601f168201915b5050506002909301549192505060ff8082169161010090041683565b6008602052815f5260405f2081815481106108f4575f80fd5b5f918252602090912001546001600160a01b03169150829050565b6001600160a01b0382165f9081526029602052604081208183600881111561093957610939610afb565b815260208101919091526040015f205460ff169392505050565b80356001600160a01b0381168114610969575f80fd5b919050565b5f6020828403121561097e575f80fd5b61098782610953565b9392505050565b5f806040838503121561099f575f80fd5b6109a883610953565b91506109b660208401610953565b90509250929050565b80356001600160601b0381168114610969575f80fd5b5f80604083850312156109e6575f80fd5b6109a8836109bf565b5f602082840312156109ff575f80fd5b5035919050565b5f60208284031215610a16575f80fd5b610987826109bf565b606081525f84518060608401528060208701608085015e5f60808285018101919091529415156020840152921515604083015250601f909101601f19160101919050565b5f8060408385031215610a74575f80fd5b610a7d83610953565b946020939093013593505050565b5f8060408385031215610a9c575f80fd5b610aa583610953565b9150602083013560098110610ab8575f80fd5b809150509250929050565b600181811c90821680610ad757607f821691505b602082108103610af557634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52602160045260245ffdfea26469706673582212207e54b17a146b2a9ffc7d168a6e805124479d606d99cff670c1f42d6303bc8d0a64736f6c63430008190033",
|
|
1155
1168
|
"linkReferences": {},
|
|
1156
1169
|
"deployedLinkReferences": {}
|
|
1157
1170
|
}
|
package/artifacts/contracts/Comptroller/Diamond/interfaces/IRewardFacet.sol/IRewardFacet.json
CHANGED
|
@@ -21,30 +21,6 @@
|
|
|
21
21
|
"stateMutability": "nonpayable",
|
|
22
22
|
"type": "function"
|
|
23
23
|
},
|
|
24
|
-
{
|
|
25
|
-
"inputs": [
|
|
26
|
-
{
|
|
27
|
-
"internalType": "address",
|
|
28
|
-
"name": "market",
|
|
29
|
-
"type": "address"
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
"internalType": "enum Action",
|
|
33
|
-
"name": "action",
|
|
34
|
-
"type": "uint8"
|
|
35
|
-
}
|
|
36
|
-
],
|
|
37
|
-
"name": "actionPaused",
|
|
38
|
-
"outputs": [
|
|
39
|
-
{
|
|
40
|
-
"internalType": "bool",
|
|
41
|
-
"name": "",
|
|
42
|
-
"type": "bool"
|
|
43
|
-
}
|
|
44
|
-
],
|
|
45
|
-
"stateMutability": "view",
|
|
46
|
-
"type": "function"
|
|
47
|
-
},
|
|
48
24
|
{
|
|
49
25
|
"inputs": [
|
|
50
26
|
{
|
|
@@ -150,56 +126,6 @@
|
|
|
150
126
|
"stateMutability": "nonpayable",
|
|
151
127
|
"type": "function"
|
|
152
128
|
},
|
|
153
|
-
{
|
|
154
|
-
"inputs": [],
|
|
155
|
-
"name": "corePoolId",
|
|
156
|
-
"outputs": [
|
|
157
|
-
{
|
|
158
|
-
"internalType": "uint96",
|
|
159
|
-
"name": "",
|
|
160
|
-
"type": "uint96"
|
|
161
|
-
}
|
|
162
|
-
],
|
|
163
|
-
"stateMutability": "pure",
|
|
164
|
-
"type": "function"
|
|
165
|
-
},
|
|
166
|
-
{
|
|
167
|
-
"inputs": [
|
|
168
|
-
{
|
|
169
|
-
"internalType": "uint96",
|
|
170
|
-
"name": "poolId",
|
|
171
|
-
"type": "uint96"
|
|
172
|
-
},
|
|
173
|
-
{
|
|
174
|
-
"internalType": "address",
|
|
175
|
-
"name": "vToken",
|
|
176
|
-
"type": "address"
|
|
177
|
-
}
|
|
178
|
-
],
|
|
179
|
-
"name": "getPoolMarketIndex",
|
|
180
|
-
"outputs": [
|
|
181
|
-
{
|
|
182
|
-
"internalType": "PoolMarketId",
|
|
183
|
-
"name": "",
|
|
184
|
-
"type": "bytes32"
|
|
185
|
-
}
|
|
186
|
-
],
|
|
187
|
-
"stateMutability": "pure",
|
|
188
|
-
"type": "function"
|
|
189
|
-
},
|
|
190
|
-
{
|
|
191
|
-
"inputs": [],
|
|
192
|
-
"name": "getXVSAddress",
|
|
193
|
-
"outputs": [
|
|
194
|
-
{
|
|
195
|
-
"internalType": "address",
|
|
196
|
-
"name": "",
|
|
197
|
-
"type": "address"
|
|
198
|
-
}
|
|
199
|
-
],
|
|
200
|
-
"stateMutability": "view",
|
|
201
|
-
"type": "function"
|
|
202
|
-
},
|
|
203
129
|
{
|
|
204
130
|
"inputs": [],
|
|
205
131
|
"name": "getXVSVTokenAddress",
|
|
@@ -236,19 +162,6 @@
|
|
|
236
162
|
],
|
|
237
163
|
"stateMutability": "nonpayable",
|
|
238
164
|
"type": "function"
|
|
239
|
-
},
|
|
240
|
-
{
|
|
241
|
-
"inputs": [],
|
|
242
|
-
"name": "venusInitialIndex",
|
|
243
|
-
"outputs": [
|
|
244
|
-
{
|
|
245
|
-
"internalType": "uint224",
|
|
246
|
-
"name": "",
|
|
247
|
-
"type": "uint224"
|
|
248
|
-
}
|
|
249
|
-
],
|
|
250
|
-
"stateMutability": "pure",
|
|
251
|
-
"type": "function"
|
|
252
165
|
}
|
|
253
166
|
],
|
|
254
167
|
"bytecode": "0x",
|
package/artifacts/contracts/Comptroller/Diamond/interfaces/ISetterFacet.sol/ISetterFacet.json
CHANGED
|
@@ -501,6 +501,25 @@
|
|
|
501
501
|
"stateMutability": "nonpayable",
|
|
502
502
|
"type": "function"
|
|
503
503
|
},
|
|
504
|
+
{
|
|
505
|
+
"inputs": [
|
|
506
|
+
{
|
|
507
|
+
"internalType": "contract IDeviationBoundedOracle",
|
|
508
|
+
"name": "newDeviationBoundedOracle",
|
|
509
|
+
"type": "address"
|
|
510
|
+
}
|
|
511
|
+
],
|
|
512
|
+
"name": "setDeviationBoundedOracle",
|
|
513
|
+
"outputs": [
|
|
514
|
+
{
|
|
515
|
+
"internalType": "uint256",
|
|
516
|
+
"name": "",
|
|
517
|
+
"type": "uint256"
|
|
518
|
+
}
|
|
519
|
+
],
|
|
520
|
+
"stateMutability": "nonpayable",
|
|
521
|
+
"type": "function"
|
|
522
|
+
},
|
|
504
523
|
{
|
|
505
524
|
"inputs": [
|
|
506
525
|
{
|
|
@@ -445,8 +445,8 @@
|
|
|
445
445
|
"type": "function"
|
|
446
446
|
}
|
|
447
447
|
],
|
|
448
|
-
"bytecode": "
|
|
449
|
-
"deployedBytecode": "
|
|
448
|
+
"bytecode": "0x6080604052348015600e575f80fd5b505f80546001600160a01b031916331790556105618061002d5f395ff3fe608060405234801561000f575f80fd5b5060043610610086575f3560e01c8063dcfbc0c711610059578063dcfbc0c714610168578063e992a0411461017b578063e9c714f21461018e578063f851a4401461019657610086565b806326782247146100fc578063b71d1a0c1461012c578063bb82aa5e1461014d578063c1e8033414610160575b6002546040515f916001600160a01b0316906100a590839036906104e2565b5f60405180830381855af49150503d805f81146100dd576040519150601f19603f3d011682016040523d82523d5f602084013e6100e2565b606091505b505090506040513d5f823e8180156100f8573d82f35b3d82fd5b60015461010f906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b61013f61013a3660046104f1565b6101a8565b604051908152602001610123565b60025461010f906001600160a01b031681565b61013f610233565b60035461010f906001600160a01b031681565b61013f6101893660046104f1565b610327565b61013f61039f565b5f5461010f906001600160a01b031681565b5f80546001600160a01b031633146101cc576101c66001600e61046b565b92915050565b600180546001600160a01b038481166001600160a01b031983168117909355604080519190921680825260208201939093527fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a991015b60405180910390a15f5b9392505050565b6003545f906001600160a01b03163314158061025857506003546001600160a01b0316155b1561026d5761026860018061046b565b905090565b60028054600380546001600160a01b038082166001600160a01b031980861682179096559490911690915560408051919092168082526020820184905292917fd604de94d45953f9138079ec1b82d533cb2160c906d1076d1f7ed54befbca97a910160405180910390a1600354604080516001600160a01b03808516825290921660208301527fe945ccee5d701fc83f9b8aa8ca94ea4219ec1fcbd4f4cab4f0ea57c5c3e1d81591015b60405180910390a15f9250505090565b5f80546001600160a01b03163314610345576101c66001600f61046b565b600380546001600160a01b038481166001600160a01b031983168117909355604080519190921680825260208201939093527fe945ccee5d701fc83f9b8aa8ca94ea4219ec1fcbd4f4cab4f0ea57c5c3e1d8159101610222565b6001545f906001600160a01b031633146103be5761026860015f61046b565b5f8054600180546001600160a01b038082166001600160a01b031980861682179096559490911690915560408051919092168082526020820184905292917ff9ffabca9c8276e99321725bcb43fb076a6c66a54b7f21c4e8146d8519b417dc910160405180910390a1600154604080516001600160a01b03808516825290921660208301527fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a99101610317565b5f7f45b96fe442630264581b197e84bbada861235052c5a1aadfff9ea4e40a969aa083601481111561049f5761049f610517565b83601a8111156104b1576104b1610517565b6040805192835260208301919091525f9082015260600160405180910390a182601481111561022c5761022c610517565b818382375f9101908152919050565b5f60208284031215610501575f80fd5b81356001600160a01b038116811461022c575f80fd5b634e487b7160e01b5f52602160045260245ffdfea2646970667358221220717b245a8fd985d8c0d9c940ef87c52e318b2785cbd137868b3fe0e62f72183964736f6c63430008190033",
|
|
449
|
+
"deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610086575f3560e01c8063dcfbc0c711610059578063dcfbc0c714610168578063e992a0411461017b578063e9c714f21461018e578063f851a4401461019657610086565b806326782247146100fc578063b71d1a0c1461012c578063bb82aa5e1461014d578063c1e8033414610160575b6002546040515f916001600160a01b0316906100a590839036906104e2565b5f60405180830381855af49150503d805f81146100dd576040519150601f19603f3d011682016040523d82523d5f602084013e6100e2565b606091505b505090506040513d5f823e8180156100f8573d82f35b3d82fd5b60015461010f906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b61013f61013a3660046104f1565b6101a8565b604051908152602001610123565b60025461010f906001600160a01b031681565b61013f610233565b60035461010f906001600160a01b031681565b61013f6101893660046104f1565b610327565b61013f61039f565b5f5461010f906001600160a01b031681565b5f80546001600160a01b031633146101cc576101c66001600e61046b565b92915050565b600180546001600160a01b038481166001600160a01b031983168117909355604080519190921680825260208201939093527fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a991015b60405180910390a15f5b9392505050565b6003545f906001600160a01b03163314158061025857506003546001600160a01b0316155b1561026d5761026860018061046b565b905090565b60028054600380546001600160a01b038082166001600160a01b031980861682179096559490911690915560408051919092168082526020820184905292917fd604de94d45953f9138079ec1b82d533cb2160c906d1076d1f7ed54befbca97a910160405180910390a1600354604080516001600160a01b03808516825290921660208301527fe945ccee5d701fc83f9b8aa8ca94ea4219ec1fcbd4f4cab4f0ea57c5c3e1d81591015b60405180910390a15f9250505090565b5f80546001600160a01b03163314610345576101c66001600f61046b565b600380546001600160a01b038481166001600160a01b031983168117909355604080519190921680825260208201939093527fe945ccee5d701fc83f9b8aa8ca94ea4219ec1fcbd4f4cab4f0ea57c5c3e1d8159101610222565b6001545f906001600160a01b031633146103be5761026860015f61046b565b5f8054600180546001600160a01b038082166001600160a01b031980861682179096559490911690915560408051919092168082526020820184905292917ff9ffabca9c8276e99321725bcb43fb076a6c66a54b7f21c4e8146d8519b417dc910160405180910390a1600154604080516001600160a01b03808516825290921660208301527fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a99101610317565b5f7f45b96fe442630264581b197e84bbada861235052c5a1aadfff9ea4e40a969aa083601481111561049f5761049f610517565b83601a8111156104b1576104b1610517565b6040805192835260208301919091525f9082015260600160405180910390a182601481111561022c5761022c610517565b818382375f9101908152919050565b5f60208284031215610501575f80fd5b81356001600160a01b038116811461022c575f80fd5b634e487b7160e01b5f52602160045260245ffdfea2646970667358221220717b245a8fd985d8c0d9c940ef87c52e318b2785cbd137868b3fe0e62f72183964736f6c63430008190033",
|
|
450
450
|
"linkReferences": {},
|
|
451
451
|
"deployedLinkReferences": {}
|
|
452
452
|
}
|