@dolomite-exchange/dolomite-margin 0.2.6 → 0.2.7
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/build/contracts/Account.json +11 -11
- package/build/contracts/Actions.json +11 -11
- package/build/contracts/Address.json +1 -1
- package/build/contracts/Admin.json +23 -23
- package/build/contracts/AdminImpl.json +35 -307
- package/build/contracts/AdvancedMath.json +7 -7
- package/build/contracts/AmmRebalancerProxy.json +577 -621
- package/build/contracts/AmmRebalancerProxyV1.json +78 -32
- package/build/contracts/Babylonian.json +1 -1
- package/build/contracts/Bits.json +9 -9
- package/build/contracts/Cache.json +13 -13
- package/build/contracts/ChainlinkPriceOracleV1.json +16 -16
- package/build/contracts/Context.json +1 -1
- package/build/contracts/CustomTestToken.json +9 -9
- package/build/contracts/Decimal.json +9 -9
- package/build/contracts/DelayedMultiSig.json +9 -9
- package/build/contracts/DolomiteAmmERC20.json +11 -11
- package/build/contracts/DolomiteAmmFactory.json +14 -52
- package/build/contracts/DolomiteAmmLibrary.json +24 -24
- package/build/contracts/DolomiteAmmPair.json +27 -27
- package/build/contracts/DolomiteAmmRouterProxy.json +30 -363
- package/build/contracts/DolomiteMargin.json +21 -67
- package/build/contracts/DoubleExponentInterestSetter.json +15 -21
- package/build/contracts/EnumerableSet.json +7 -7
- package/build/contracts/ErroringOmiseToken.json +9 -9
- package/build/contracts/ErroringToken.json +10 -10
- package/build/contracts/Events.json +17 -17
- package/build/contracts/ExcessivelySafeCall.json +35 -35
- package/build/contracts/Exchange.json +15 -15
- package/build/contracts/Expiry.json +36 -36
- package/build/contracts/Getters.json +33 -33
- package/build/contracts/IAutoTrader.json +9 -9
- package/build/contracts/ICallee.json +7 -7
- package/build/contracts/IChainlinkAggregator.json +5 -5
- package/build/contracts/IDolomiteAmmERC20.json +5 -5
- package/build/contracts/IDolomiteAmmFactory.json +9 -9
- package/build/contracts/IDolomiteAmmPair.json +9 -9
- package/build/contracts/IDolomiteMargin.json +23 -23
- package/build/contracts/IERC20.json +1 -1
- package/build/contracts/IERC20Detailed.json +5 -5
- package/build/contracts/IExchangeWrapper.json +5 -5
- package/build/contracts/IExpiry.json +9 -9
- package/build/contracts/IInterestSetter.json +7 -7
- package/build/contracts/ILiquidationCallback.json +7 -7
- package/build/contracts/IMakerOracle.json +5 -5
- package/build/contracts/IOasisDex.json +5 -5
- package/build/contracts/IPriceOracle.json +7 -7
- package/build/contracts/IRecyclable.json +9 -9
- package/build/contracts/ITransferProxy.json +5 -5
- package/build/contracts/IUniswapV2Callee.json +5 -5
- package/build/contracts/IUniswapV2Factory.json +5 -5
- package/build/contracts/IUniswapV2Pair.json +5 -5
- package/build/contracts/IUniswapV2Router.json +5 -5
- package/build/contracts/IWETH.json +5 -5
- package/build/contracts/Interest.json +15 -15
- package/build/contracts/LiquidateOrVaporizeImpl.json +32 -83
- package/build/contracts/LiquidatorProxyHelper.json +23 -23
- package/build/contracts/LiquidatorProxyV1.json +30 -36
- package/build/contracts/LiquidatorProxyV1WithAmm.json +49 -105
- package/build/contracts/Math.json +1 -1
- package/build/contracts/Migrations.json +8 -14
- package/build/contracts/Monetary.json +7 -7
- package/build/contracts/MultiCall.json +8 -14
- package/build/contracts/MultiSig.json +7 -7
- package/build/contracts/OmiseToken.json +8 -8
- package/build/contracts/OnlyDolomiteMargin.json +11 -11
- package/build/contracts/Operation.json +15 -15
- package/build/contracts/OperationImpl.json +39 -47
- package/build/contracts/Ownable.json +1 -1
- package/build/contracts/PartiallyDelayedMultiSig.json +9 -9
- package/build/contracts/PayableProxy.json +17 -23
- package/build/contracts/Permission.json +11 -11
- package/build/contracts/PolynomialInterestSetter.json +13 -13
- package/build/contracts/RecyclableTokenProxy.json +25 -25
- package/build/contracts/ReentrancyGuard.json +1 -1
- package/build/contracts/Require.json +7 -7
- package/build/contracts/SafeERC20.json +1 -1
- package/build/contracts/SafeETH.json +7 -7
- package/build/contracts/SafeLiquidationCallback.json +17 -17
- package/build/contracts/SafeMath.json +1 -1
- package/build/contracts/SignedOperationProxy.json +21 -104
- package/build/contracts/SimpleFeeOwner.json +18 -63
- package/build/contracts/State.json +9 -9
- package/build/contracts/Storage.json +37 -37
- package/build/contracts/TestAmmRebalancerProxy.json +32 -58
- package/build/contracts/TestAutoTrader.json +22 -22
- package/build/contracts/TestBtcUsdChainlinkAggregator.json +10 -10
- package/build/contracts/TestCallee.json +19 -19
- package/build/contracts/TestChainlinkPriceOracleV1.json +10 -94
- package/build/contracts/TestCounter.json +7 -7
- package/build/contracts/TestDaiUsdChainlinkAggregator.json +11 -11
- package/build/contracts/TestDolomiteMargin.json +22 -22
- package/build/contracts/TestDoubleExponentInterestSetter.json +10 -10
- package/build/contracts/TestEthUsdChainlinkAggregator.json +11 -11
- package/build/contracts/TestExchangeWrapper.json +28 -28
- package/build/contracts/TestInterestSetter.json +13 -13
- package/build/contracts/TestLib.json +22 -22
- package/build/contracts/TestLinkUsdChainlinkAggregator.json +11 -11
- package/build/contracts/TestLiquidateCallback.json +719 -719
- package/build/contracts/TestLiquidationCallback.json +13 -13
- package/build/contracts/TestLrcEthChainlinkAggregator.json +11 -11
- package/build/contracts/TestMakerOracle.json +10 -10
- package/build/contracts/TestMaticUsdChainlinkAggregator.json +10 -10
- package/build/contracts/TestOasisDex.json +12 -12
- package/build/contracts/TestOperationImpl.json +14 -14
- package/build/contracts/TestPolynomialInterestSetter.json +10 -10
- package/build/contracts/TestPriceAggregator.json +9 -9
- package/build/contracts/TestPriceOracle.json +13 -13
- package/build/contracts/TestRecyclableToken.json +9 -9
- package/build/contracts/TestSimpleCallee.json +15 -15
- package/build/contracts/TestToken.json +9 -9
- package/build/contracts/TestTrader.json +17 -17
- package/build/contracts/TestUniswapAmmRebalancerProxy.json +16 -16
- package/build/contracts/TestUsdcUsdChainlinkAggregator.json +11 -11
- package/build/contracts/TestWETH.json +9 -9
- package/build/contracts/Time.json +9 -9
- package/build/contracts/Token.json +9 -9
- package/build/contracts/TokenA.json +10 -10
- package/build/contracts/TokenB.json +10 -10
- package/build/contracts/TokenC.json +10 -10
- package/build/contracts/TokenD.json +10 -10
- package/build/contracts/TokenE.json +10 -10
- package/build/contracts/TokenF.json +10 -10
- package/build/contracts/TransferProxy.json +22 -28
- package/build/contracts/TypedSignature.json +9 -9
- package/build/contracts/Types.json +9 -9
- package/build/contracts/UQ112x112.json +7 -7
- package/build/contracts/UniswapV2ERC20.json +7 -7
- package/build/contracts/UniswapV2Factory.json +12 -12
- package/build/contracts/UniswapV2Library.json +20 -20
- package/build/contracts/UniswapV2Pair.json +17 -17
- package/build/contracts/UniswapV2Router02.json +16 -16
- package/build/contracts/WETH9.json +1 -1
- package/contracts/external/amm/DolomiteAmmERC20.sol +135 -0
- package/contracts/external/amm/DolomiteAmmFactory.sol +122 -0
- package/contracts/external/amm/DolomiteAmmPair.sol +573 -0
- package/contracts/external/amm/SimpleFeeOwner.sol +107 -0
- package/contracts/external/helpers/LiquidatorProxyHelper.sol +252 -0
- package/contracts/external/helpers/OnlyDolomiteMargin.sol +63 -0
- package/contracts/external/interestsetters/DoubleExponentInterestSetter.sol +212 -0
- package/contracts/external/interestsetters/PolynomialInterestSetter.sol +205 -0
- package/contracts/external/interfaces/IChainlinkAggregator.sol +33 -0
- package/contracts/external/interfaces/IDolomiteAmmERC20.sol +52 -0
- package/contracts/external/interfaces/IDolomiteAmmFactory.sol +42 -0
- package/contracts/external/interfaces/IDolomiteAmmPair.sol +116 -0
- package/contracts/external/interfaces/IExpiry.sol +70 -0
- package/contracts/external/interfaces/IMakerOracle.sol +52 -0
- package/contracts/external/interfaces/IOasisDex.sol +326 -0
- package/contracts/external/interfaces/ITransferProxy.sol +53 -0
- package/contracts/external/interfaces/IUniswapV2Router.sol +134 -0
- package/contracts/external/lib/AdvancedMath.sol +23 -0
- package/contracts/external/lib/DolomiteAmmLibrary.sol +323 -0
- package/contracts/external/lib/TypedSignature.sol +120 -0
- package/contracts/external/lib/UQ112x112.sol +22 -0
- package/contracts/external/multisig/DelayedMultiSig.sol +206 -0
- package/contracts/external/multisig/MultiSig.sol +571 -0
- package/contracts/external/multisig/PartiallyDelayedMultiSig.sol +174 -0
- package/contracts/external/oracles/ChainlinkPriceOracleV1.sol +197 -0
- package/contracts/external/oracles/TestChainlinkPriceOracleV1.sol +98 -0
- package/contracts/external/proxies/AmmRebalancerProxyV1.sol +465 -0
- package/contracts/external/proxies/DolomiteAmmRouterProxy.sol +877 -0
- package/contracts/external/proxies/LiquidatorProxyV1.sol +507 -0
- package/contracts/external/proxies/LiquidatorProxyV1WithAmm.sol +574 -0
- package/contracts/external/proxies/PayableProxy.sol +146 -0
- package/contracts/external/proxies/RecyclableTokenProxy.sol +463 -0
- package/contracts/external/proxies/SignedOperationProxy.sol +553 -0
- package/contracts/external/proxies/TransferProxy.sol +207 -0
- package/contracts/external/traders/Expiry.sol +532 -0
- package/contracts/external/uniswap-v2/UniswapV2ERC20.sol +118 -0
- package/contracts/external/uniswap-v2/UniswapV2Factory.sol +67 -0
- package/contracts/external/uniswap-v2/UniswapV2Pair.sol +283 -0
- package/contracts/external/uniswap-v2/UniswapV2Router02.sol +566 -0
- package/contracts/external/uniswap-v2/interfaces/IUniswapV2Callee.sol +13 -0
- package/contracts/external/uniswap-v2/interfaces/IUniswapV2Factory.sol +18 -0
- package/contracts/external/uniswap-v2/interfaces/IUniswapV2Pair.sol +67 -0
- package/contracts/external/uniswap-v2/interfaces/IWETH.sol +7 -0
- package/contracts/external/uniswap-v2/libraries/SafeETH.sol +29 -0
- package/contracts/external/uniswap-v2/libraries/UniswapV2Library.sol +117 -0
- package/contracts/external/utils/MultiCall.sol +95 -0
- package/contracts/protocol/impl/artifacts/OperationImpl.json +80 -0
- package/contracts/protocol/impl/artifacts/OperationImpl_metadata.json +193 -0
- package/dist/build/published_contracts/AdminImpl.json +2 -2
- package/dist/build/published_contracts/AmmRebalancerProxyV1.json +5 -0
- package/dist/build/published_contracts/ChainlinkPriceOracleV1.json +1 -1
- package/dist/build/published_contracts/DolomiteAmmFactory.json +1 -1
- package/dist/build/published_contracts/DolomiteAmmRouterProxy.json +1 -1
- package/dist/build/published_contracts/DoubleExponentInterestSetter.json +2 -2
- package/dist/build/published_contracts/Expiry.json +1 -1
- package/dist/build/published_contracts/LiquidatorProxyV1.json +1 -1
- package/dist/build/published_contracts/LiquidatorProxyV1WithAmm.json +1 -1
- package/dist/build/published_contracts/MultiCall.json +1 -1
- package/dist/build/published_contracts/PayableProxy.json +2 -2
- package/dist/build/published_contracts/SignedOperationProxy.json +2 -2
- package/dist/build/published_contracts/SimpleFeeOwner.json +1 -1
- package/dist/build/published_contracts/TestUniswapAmmRebalancerProxy.json +140 -0
- package/dist/build/published_contracts/TransferProxy.json +1 -1
- package/dist/src/lib/Contracts.d.ts +3 -1
- package/dist/src/lib/Contracts.js +7 -3
- package/dist/src/lib/Contracts.js.map +1 -1
- package/package.json +2 -1
|
@@ -1412,15 +1412,15 @@
|
|
|
1412
1412
|
"type": "function"
|
|
1413
1413
|
}
|
|
1414
1414
|
],
|
|
1415
|
-
"metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"number\",\"type\":\"uint256\"}],\"internalType\":\"struct Account.Info\",\"name\":\"account\",\"type\":\"tuple\"}],\"name\":\"getAccountBalances\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"},{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"},{\"components\":[{\"internalType\":\"bool\",\"name\":\"sign\",\"type\":\"bool\"},{\"internalType\":\"uint128\",\"name\":\"value\",\"type\":\"uint128\"}],\"internalType\":\"struct Types.Par[]\",\"name\":\"\",\"type\":\"tuple[]\"},{\"components\":[{\"internalType\":\"bool\",\"name\":\"sign\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Types.Wei[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"number\",\"type\":\"uint256\"}],\"internalType\":\"struct Account.Info\",\"name\":\"account\",\"type\":\"tuple\"}],\"name\":\"getAccountMarketsWithNonZeroBalances\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"number\",\"type\":\"uint256\"}],\"internalType\":\"struct Account.Info\",\"name\":\"account\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getAccountPar\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"sign\",\"type\":\"bool\"},{\"internalType\":\"uint128\",\"name\":\"value\",\"type\":\"uint128\"}],\"internalType\":\"struct Types.Par\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"number\",\"type\":\"uint256\"}],\"internalType\":\"struct Account.Info\",\"name\":\"account\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getAccountParNoMarketCheck\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"sign\",\"type\":\"bool\"},{\"internalType\":\"uint128\",\"name\":\"value\",\"type\":\"uint128\"}],\"internalType\":\"struct Types.Par\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"number\",\"type\":\"uint256\"}],\"internalType\":\"struct Account.Info\",\"name\":\"account\",\"type\":\"tuple\"}],\"name\":\"getAccountStatus\",\"outputs\":[{\"internalType\":\"enum Account.Status\",\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"number\",\"type\":\"uint256\"}],\"internalType\":\"struct Account.Info\",\"name\":\"account\",\"type\":\"tuple\"}],\"name\":\"getAccountValues\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Monetary.Value\",\"name\":\"\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Monetary.Value\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"number\",\"type\":\"uint256\"}],\"internalType\":\"struct Account.Info\",\"name\":\"account\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getAccountWei\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"sign\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Types.Wei\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"number\",\"type\":\"uint256\"}],\"internalType\":\"struct Account.Info\",\"name\":\"account\",\"type\":\"tuple\"}],\"name\":\"getAdjustedAccountValues\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Monetary.Value\",\"name\":\"\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Monetary.Value\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getEarningsRate\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"autoTrader\",\"type\":\"address\"}],\"name\":\"getIsAutoTraderSpecial\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"getIsGlobalOperator\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"getIsLocalOperator\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getLiquidationSpread\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"heldMarketId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"owedMarketId\",\"type\":\"uint256\"}],\"name\":\"getLiquidationSpreadForPair\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getMarginRatio\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarket\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"isClosing\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"isRecyclable\",\"type\":\"bool\"},{\"components\":[{\"internalType\":\"uint128\",\"name\":\"borrow\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"supply\",\"type\":\"uint128\"}],\"internalType\":\"struct Types.TotalPar\",\"name\":\"totalPar\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint96\",\"name\":\"borrow\",\"type\":\"uint96\"},{\"internalType\":\"uint96\",\"name\":\"supply\",\"type\":\"uint96\"},{\"internalType\":\"uint32\",\"name\":\"lastUpdate\",\"type\":\"uint32\"}],\"internalType\":\"struct Interest.Index\",\"name\":\"index\",\"type\":\"tuple\"},{\"internalType\":\"contract IPriceOracle\",\"name\":\"priceOracle\",\"type\":\"address\"},{\"internalType\":\"contract IInterestSetter\",\"name\":\"interestSetter\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"marginPremium\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"spreadPremium\",\"type\":\"tuple\"}],\"internalType\":\"struct Storage.Market\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketCachedIndex\",\"outputs\":[{\"components\":[{\"internalType\":\"uint96\",\"name\":\"borrow\",\"type\":\"uint96\"},{\"internalType\":\"uint96\",\"name\":\"supply\",\"type\":\"uint96\"},{\"internalType\":\"uint32\",\"name\":\"lastUpdate\",\"type\":\"uint32\"}],\"internalType\":\"struct Interest.Index\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketCurrentIndex\",\"outputs\":[{\"components\":[{\"internalType\":\"uint96\",\"name\":\"borrow\",\"type\":\"uint96\"},{\"internalType\":\"uint96\",\"name\":\"supply\",\"type\":\"uint96\"},{\"internalType\":\"uint32\",\"name\":\"lastUpdate\",\"type\":\"uint32\"}],\"internalType\":\"struct Interest.Index\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"getMarketIdByTokenAddress\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketInterestRate\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Interest.Rate\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketInterestSetter\",\"outputs\":[{\"internalType\":\"contract IInterestSetter\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketIsClosing\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketIsRecyclable\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketMarginPremium\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketPrice\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Monetary.Price\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketPriceOracle\",\"outputs\":[{\"internalType\":\"contract IPriceOracle\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketSpreadPremium\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketTokenAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketTotalPar\",\"outputs\":[{\"components\":[{\"internalType\":\"uint128\",\"name\":\"borrow\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"supply\",\"type\":\"uint128\"}],\"internalType\":\"struct Types.TotalPar\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketWithInfo\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"isClosing\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"isRecyclable\",\"type\":\"bool\"},{\"components\":[{\"internalType\":\"uint128\",\"name\":\"borrow\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"supply\",\"type\":\"uint128\"}],\"internalType\":\"struct Types.TotalPar\",\"name\":\"totalPar\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint96\",\"name\":\"borrow\",\"type\":\"uint96\"},{\"internalType\":\"uint96\",\"name\":\"supply\",\"type\":\"uint96\"},{\"internalType\":\"uint32\",\"name\":\"lastUpdate\",\"type\":\"uint32\"}],\"internalType\":\"struct Interest.Index\",\"name\":\"index\",\"type\":\"tuple\"},{\"internalType\":\"contract IPriceOracle\",\"name\":\"priceOracle\",\"type\":\"address\"},{\"internalType\":\"contract IInterestSetter\",\"name\":\"interestSetter\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"marginPremium\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"spreadPremium\",\"type\":\"tuple\"}],\"internalType\":\"struct Storage.Market\",\"name\":\"\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint96\",\"name\":\"borrow\",\"type\":\"uint96\"},{\"internalType\":\"uint96\",\"name\":\"supply\",\"type\":\"uint96\"},{\"internalType\":\"uint32\",\"name\":\"lastUpdate\",\"type\":\"uint32\"}],\"internalType\":\"struct Interest.Index\",\"name\":\"\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Monetary.Price\",\"name\":\"\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Interest.Rate\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getMinBorrowedValue\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Monetary.Value\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getNumExcessTokens\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"sign\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Types.Wei\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getNumMarkets\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"number\",\"type\":\"uint256\"}],\"internalType\":\"struct Account.Info\",\"name\":\"account\",\"type\":\"tuple\"}],\"name\":\"getNumberOfMarketsWithBorrow\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"n\",\"type\":\"uint256\"}],\"name\":\"getRecyclableMarkets\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getRiskLimits\",\"outputs\":[{\"components\":[{\"internalType\":\"uint64\",\"name\":\"marginRatioMax\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"liquidationSpreadMax\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"earningsRateMax\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"marginPremiumMax\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"spreadPremiumMax\",\"type\":\"uint64\"},{\"internalType\":\"uint128\",\"name\":\"minBorrowedValueMax\",\"type\":\"uint128\"}],\"internalType\":\"struct Storage.RiskLimits\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getRiskParams\",\"outputs\":[{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"marginRatio\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"liquidationSpread\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"earningsRate\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Monetary.Value\",\"name\":\"minBorrowedValue\",\"type\":\"tuple\"}],\"internalType\":\"struct Storage.RiskParams\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"dYdX * Public read-only functions that allow transparency into the state of DolomiteMargin\",\"methods\":{},\"title\":\"Getters\"},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/home/cdc218/projects/dolomite-protocol-v2/contracts/protocol/Getters.sol\":\"Getters\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"/home/cdc218/projects/dolomite-protocol-v2/contracts/protocol/Getters.sol\":{\"keccak256\":\"0xfbaf01df86497dbfdfc6faeca28219aeab710c4df95f46f7d042568479e234ab\",\"urls\":[\"bzz-raw://376e23ff206d0d86a37f413e8b90e60cf1a11d64ca84bd2bf02049c326f50402\",\"dweb:/ipfs/QmaGK3dsRM6oTZqwezLDgva8qxLyuJsbbNCwVWn3QdBvdz\"]},\"/home/cdc218/projects/dolomite-protocol-v2/contracts/protocol/State.sol\":{\"keccak256\":\"0x4fe464f16c7f490dbe7f43e9672ddf1296852a4a652303a47a91bc7a3c72419b\",\"urls\":[\"bzz-raw://725237be55e03e728e268407c47704af1c93b1fddf277b5e6447d864b9f0bbfb\",\"dweb:/ipfs/QmNZfmH9XMXGdd21DMv2aNU4X152uDVUrpns64kZn1ryVn\"]},\"/home/cdc218/projects/dolomite-protocol-v2/contracts/protocol/interfaces/IERC20Detailed.sol\":{\"keccak256\":\"0x22a62e2a8155e70300773721902f4b9118e17aa0bb5d9d1b046050a014cfb223\",\"urls\":[\"bzz-raw://03af737a33c552fbe58f6f1fbd5496854fdc28dd57be4365d56663725c083a18\",\"dweb:/ipfs/QmbgLqGAQEd6tXsZB8QaPNCAMiU6nNzP75wNbKdS65BuUF\"]},\"/home/cdc218/projects/dolomite-protocol-v2/contracts/protocol/interfaces/IInterestSetter.sol\":{\"keccak256\":\"0x546825f65490a30e29d0f6446acec49c1e895ce6b33d48ca5c05092725a63a57\",\"urls\":[\"bzz-raw://6ad3013aed985bdf6e6234ae0f7f37e6bba76c3470c33bfa24678cf19b3b412c\",\"dweb:/ipfs/QmfYaSBzxGpgiHoR7ontMJY66S5L26XwkLYoEuzsEjpbQH\"]},\"/home/cdc218/projects/dolomite-protocol-v2/contracts/protocol/interfaces/IPriceOracle.sol\":{\"keccak256\":\"0x3f7c3d1397390ea44c6d5e5730d49476431c3df3b28334fe38218de5edc31138\",\"urls\":[\"bzz-raw://63ebf926fca9ce33aaabaf93805686acc25daded1648d6dab59c8c4d05116918\",\"dweb:/ipfs/QmeGkDp7ycYstpfqCYBiqoCYwy876gabx8r42o5koj3H5A\"]},\"/home/cdc218/projects/dolomite-protocol-v2/contracts/protocol/lib/Account.sol\":{\"keccak256\":\"0x0ab9a3fabc89984dff748af63d4319ee134051de2d7fc560e34ebaac86198396\",\"urls\":[\"bzz-raw://ab67f499a8ef83dc7e7cf7176a0f66eced40fa228eda8dd2d47e066ab985cf42\",\"dweb:/ipfs/QmXRHbsEYxr2Qsfsj5psXGV5LaPZHuzLiEXzSQJ77WSE27\"]},\"/home/cdc218/projects/dolomite-protocol-v2/contracts/protocol/lib/Bits.sol\":{\"keccak256\":\"0x425bf5764368faca16cc30a64b79d9bbe01fd8150444b58a464971c32450bd85\",\"urls\":[\"bzz-raw://064baf3155da634c5c80cea70bba0dda7a33af934b34f75f596961b4ab9aeafe\",\"dweb:/ipfs/QmTUHXoi9L6CkERyfhFs1jhxU66u2sbc6XRR5cH4TeHEqL\"]},\"/home/cdc218/projects/dolomite-protocol-v2/contracts/protocol/lib/Cache.sol\":{\"keccak256\":\"0x1e6ff383f285e311d07374edda353e14ac4f29201726b0062a2f046c1a2b482c\",\"urls\":[\"bzz-raw://fd11c5db01039bf2c95f3561b08d271b80b7b1cb9fd7f75da887f7609807c5a7\",\"dweb:/ipfs/QmcY6CugdEHaYUa8ZKSnUDhvtVuoLfpDscZcmC91koAn1t\"]},\"/home/cdc218/projects/dolomite-protocol-v2/contracts/protocol/lib/Decimal.sol\":{\"keccak256\":\"0x66990bbe3c58d0edf57d3f67ab5280e2a53958ce44f75c335c4c50542321bccb\",\"urls\":[\"bzz-raw://724cfdb5c99121aab5262679e46766a2883e344749870d7dbfa92d1617f68bf2\",\"dweb:/ipfs/QmYjAsS45f6UG2u3zuTks2HVfMYtyFCVMgUvD7Gt7XtU3R\"]},\"/home/cdc218/projects/dolomite-protocol-v2/contracts/protocol/lib/EnumerableSet.sol\":{\"keccak256\":\"0x9710b0ab43cc2d964d8722a0aabbedbf7e9d4756dcc0b4ab7c46c1ee68653042\",\"urls\":[\"bzz-raw://2405593d37f0f224bfca556f01634a9755bb0ed626f74dd15293106a8b4dd7d3\",\"dweb:/ipfs/QmTZ16S336jsoDnK5p3vAZRzimBkmdEJibncHVBJxBt469\"]},\"/home/cdc218/projects/dolomite-protocol-v2/contracts/protocol/lib/Interest.sol\":{\"keccak256\":\"0x73e75454568c5dfc3bdcf7dbf2ddce6ab8d3d317618bc1f1957f7667e15d3799\",\"urls\":[\"bzz-raw://7b1c8a9a79c8ffdbb0fa633f713ae3dfeac93b31d2b1639614ac32d473fb8250\",\"dweb:/ipfs/QmfARP93W2mgeVwD9Lkd3yVmbCLF2Mos7o8HJ1x6WYQmxZ\"]},\"/home/cdc218/projects/dolomite-protocol-v2/contracts/protocol/lib/Math.sol\":{\"keccak256\":\"0x0c0c913b6ccdb69063f9ec84879fcad20a1ee6f44402c9f5ec2b4f5b9f2fa16b\",\"urls\":[\"bzz-raw://89b32eefb57e5e63ad8c6e079ae7bf2d2c8622776cd45af0cf304e1cafd6e078\",\"dweb:/ipfs/Qmcj7yRnYuTgKC3ZqZqe8rynHGYVDS3UrFExcVGcqeaDHY\"]},\"/home/cdc218/projects/dolomite-protocol-v2/contracts/protocol/lib/Monetary.sol\":{\"keccak256\":\"0x5257274f2d4d3605f3e97ec45fb902111fe9a22506f0b4cf308ea933bc81bfe2\",\"urls\":[\"bzz-raw://85b8023b78805063a2ec8d376f1f5983994eabd96efd8ceadb0224dbb71c5678\",\"dweb:/ipfs/QmaDhzCzRqsuHuJfhToEC4pATQHwhh7yWWsjwfuRzFT1kG\"]},\"/home/cdc218/projects/dolomite-protocol-v2/contracts/protocol/lib/Require.sol\":{\"keccak256\":\"0xe641662503ea29ca959e84674188c3e9deaaf64c5623fb9560a4301c521ca1d3\",\"urls\":[\"bzz-raw://b10a04c7d014b99eb792c8c774e203c846d070b30cf0b715325fc07838ed6a6d\",\"dweb:/ipfs/QmUqZWnbchfEY9jM647yQamHe4GzspfUeRQF9k2nn1Hixd\"]},\"/home/cdc218/projects/dolomite-protocol-v2/contracts/protocol/lib/Storage.sol\":{\"keccak256\":\"0xf930fbde3ab43ec8f079dbad062453b502542f53b7eec670c8e86c7a2e47dd9a\",\"urls\":[\"bzz-raw://e1c402fc55471e8372be478e99f91c28373f096e31f0ef1d5072dfdb81541c29\",\"dweb:/ipfs/QmTc8WSfFCbxNQqNpq1vptUVFxteKQ8HWEhyXREyPZ2neu\"]},\"/home/cdc218/projects/dolomite-protocol-v2/contracts/protocol/lib/Time.sol\":{\"keccak256\":\"0x233d6ebf965711bf980f4bb2e672fb1a11b4b879fd41c884b3c2b704417d0d0c\",\"urls\":[\"bzz-raw://6478ff81706d531f9438b96274a7b904abbbd9c631540c68c6a89c3accf27abf\",\"dweb:/ipfs/QmWe9vkz3qwVjrcbmcTL8wgkjLPsrEqxcqPJL9ujM8PPbp\"]},\"/home/cdc218/projects/dolomite-protocol-v2/contracts/protocol/lib/Token.sol\":{\"keccak256\":\"0xd7bcae9e3c570544fc946a00cc7695106a64c20bc130d0183612c0410a531d19\",\"urls\":[\"bzz-raw://0ff5ffd6abb9ed223a64128c131afd962bec07fb9867cb62593906b339c76920\",\"dweb:/ipfs/QmbTrJL4bekvBqqaw6wXnBhYzS9uAqULSWF2VzW4cdfsM5\"]},\"/home/cdc218/projects/dolomite-protocol-v2/contracts/protocol/lib/Types.sol\":{\"keccak256\":\"0xab134538648a2e223a7fe61db03c14f687657a5d37147f93c9088f11735aa311\",\"urls\":[\"bzz-raw://79dc7d2b30576d2349b99267642ac8d5fb7939c920b8d8045379d3614238bdc3\",\"dweb:/ipfs/QmaQJYg1nirHoWSC6G38Cjsk9pZBzEaNrGXKqTsvAzbyES\"]},\"@openzeppelin/contracts/math/SafeMath.sol\":{\"keccak256\":\"0x640b6dee7a4b830bdfd52b5031a07fc2b12209f5b2e29e5d364a7d37f69d8076\",\"urls\":[\"bzz-raw://31113152e1ddb78fe7a4197f247591ca894e93f916867beb708d8e747b6cc74f\",\"dweb:/ipfs/QmbZaJyXdpsYGykVhHH9qpVGQg9DGCxE2QufbCUy3daTgq\"]},\"@openzeppelin/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0xe5bb0f57cff3e299f360052ba50f1ea0fff046df2be070b6943e0e3c3fdad8a9\",\"urls\":[\"bzz-raw://59fd025151435da35faa8093a5c7a17de02de9d08ad27275c5cdf05050820d91\",\"dweb:/ipfs/QmQMvwEcPhoRXzbXyrdoeRtvLoifUW9Qh7Luho7bmUPRkc\"]}},\"version\":1}",
|
|
1416
|
-
"bytecode": "0x6080604052664765747465727360c81b600e5534801561001e57600080fd5b506139de8061002e6000396000f3fe608060405234801561001057600080fd5b50600436106102775760003560e01c80638928378e11610160578063d5ecf7c5116100d8578063eb44fdd31161008c578063f941605211610071578063f9416052146105a2578063fd04b606146105b5578063fd47eda6146105c857610277565b8063eb44fdd31461056f578063f1061ba81461058f57610277565b8063e51bfcb4116100bd578063e51bfcb414610532578063e552022814610552578063eb1c6e6b1461055a57610277565b8063d5ecf7c51461050c578063deec053d1461051f57610277565b8063c14609421161012f578063c8e1882611610114578063c8e18826146104c6578063cb04a34c146104d9578063d24c48bc146104f957610277565b8063c14609421461049e578063c190c2ec146104a657610277565b80638928378e146104425780638fae3be11461045557806398d4611b14610468578063b548b8921461047b57610277565b80633a031bf0116101f35780635735a430116101c257806369794795116101a757806369794795146104025780636a8194e7146104175780637e9eaf411461043a57610277565b80635735a430146103dc5780635ac7d17c146103ef57610277565b80633a031bf01461038157806347d1b53c146103945780634f3c1542146103b457806356ea84b2146103bc57610277565b8063133683641161024a5780631a7777bb1161022f5780631a7777bb14610339578063295c39a51461035957806334fd45f11461036e57610277565b80631336836414610306578063197f0f051461032657610277565b80630339a0c41461027c578063052f72d7146102a5578063062bd3e9146102c5578063124f914c146102e5575b600080fd5b61028f61028a366004612fc3565b6105db565b60405161029c9190613688565b60405180910390f35b6102b86102b3366004612eff565b6106b0565b60405161029c91906136e6565b6102d86102d3366004612fc3565b6106c8565b60405161029c9190613652565b6102f86102f3366004612f57565b6106e4565b60405161029c9291906137dd565b610319610314366004612fc3565b610708565b60405161029c91906136f4565b610319610334366004612fc3565b61073f565b61034c610347366004612fc3565b610776565b60405161029c9190613741565b6103616107ad565b60405161029c9190613806565b61036161037c366004612f57565b6107b3565b6102b861038f366004612f1d565b6107c5565b6103a76103a2366004612f75565b6107df565b60405161029c91906137a5565b61034c610802565b6103cf6103ca366004612fc3565b61081e565b60405161029c919061374f565b6102b86103ea366004612fc3565b610853565b6102b86103fd366004612fc3565b61088d565b61040a6108c6565b60405161029c91906137c1565b61042a610425366004612f57565b610922565b60405161029c9493929190613699565b61034c610ad9565b61034c610450366004612fc3565b610af5565b610361610463366004612eff565b610b2a565b61028f610476366004612f57565b610b5e565b61048e610489366004612fc3565b610b71565b60405161029c949392919061376c565b61034c610bcd565b6104b96104b4366004612f75565b610be9565b60405161029c91906137f8565b6103a76104d4366004612f75565b610c29565b6104ec6104e7366004612fc3565b610c31565b60405161029c91906137cf565b61034c610507366004612fff565b610c53565b6104b961051a366004612fc3565b610c7f565b6103cf61052d366004612fc3565b610ca1565b610545610540366004612f57565b610cc3565b60405161029c9190613702565b61034c610cd5565b610562610cf1565b60405161029c91906137b3565b61058261057d366004612fc3565b610d93565b60405161029c919061375d565b6102b861059d366004612eff565b610f0f565b6102f86105b0366004612f57565b610f21565b61034c6105c3366004612fc3565b610f3c565b61034c6105d6366004612fc3565b610f73565b6060600080905060608360405190808252806020026020018201604052801561060e578160200160208202803883390190505b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60005260036020527fb1ee3b3d0d99532dd9f14b22c0b908d4eec0e052c3827bbed2d6c3986954d08c549091505b801580159061066c57508483105b156106a6578082848060010195508151811061068457fe5b602090810291909101810191909152600091825260039052604090205461065e565b509150505b919050565b60006106c2818363ffffffff610fa816565b92915050565b60006106d382610fd7565b6106c260008363ffffffff61103b16565b6106ec612cda565b6106f4612cda565b6106ff836000611067565b91509150915091565b600061071382610fd7565b5060009081526001602052604090206003015473ffffffffffffffffffffffffffffffffffffffff1690565b600061074a82610fd7565b5060009081526001602052604090206004015473ffffffffffffffffffffffffffffffffffffffff1690565b61077e612cda565b61078782610fd7565b506000908152600160209081526040918290208251918201909252600690910154815290565b60005490565b60006106c2818363ffffffff61110c16565b60006107d881848463ffffffff61115316565b9392505050565b6107e7612ced565b6107f082610fd7565b6107d86000848463ffffffff61119016565b61080a612cda565b506040805160208101909152600854815290565b610826612d04565b61082f82610fd7565b6106c28261084460008263ffffffff61120f16565b6000919063ffffffff61129316565b600061085e82610fd7565b506000908152600160205260409020547501000000000000000000000000000000000000000000900460ff1690565b600061089882610fd7565b5060009081526001602052604090205474010000000000000000000000000000000000000000900460ff1690565b6108ce612d24565b506040805160a08101825260085460808201908152815281516020818101845260095482528083019190915282518082018452600a548152828401528251908101909252600b548252606081019190915290565b60608080808061093960008763ffffffff6112eb16565b905060608151604051908082528060200260200182016040528015610968578160200160208202803883390190505b509050606082516040519080825280602002602001820160405280156109a857816020015b610995612ced565b81526020019060019003908161098d5790505b509050606083516040519080825280602002602001820160405280156109e857816020015b6109d5612ced565b8152602001906001900390816109cd5790505b50905060005b8451811015610ac957610a13858281518110610a0657fe5b60200260200101516106c8565b848281518110610a1f57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050610a768a868381518110610a6957fe5b60200260200101516107df565b838281518110610a8257fe5b6020026020010181905250610aaa8a868381518110610a9d57fe5b6020026020010151610be9565b828281518110610ab657fe5b60209081029190910101526001016109ee565b5092989197509550909350915050565b610ae1612cda565b506040805160208101909152600b54815290565b610afd612cda565b610b0682610fd7565b6106c282610b1b60008263ffffffff61103b16565b6000919063ffffffff61133016565b6000610b358261145f565b5073ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b60606106c260008363ffffffff6112eb16565b610b79612d63565b610b81612d04565b610b89612cda565b610b91612cda565b610b9a85610fd7565b610ba385610d93565b610bac8661081e565b610bb587610af5565b610bbe88610f73565b93509350935093509193509193565b610bd5612cda565b506040805160208101909152600954815290565b610bf1612ced565b610bfa82610fd7565b6107d8610c0f6000858563ffffffff61119016565b610c248461084460008263ffffffff61120f16565b6114c8565b6107f0612ced565b610c39612ced565b610c4282610fd7565b6106c260008363ffffffff61157916565b610c5b612cda565b610c6483610fd7565b610c6d82610fd7565b6107d86000848463ffffffff6115d916565b610c87612ced565b610c9082610fd7565b6106c260008363ffffffff61167016565b610ca9612d04565b610cb282610fd7565b6106c260008363ffffffff61120f16565b60006106c2818363ffffffff6117cb16565b610cdd612cda565b506040805160208101909152600a54815290565b610cf9612db5565b506040805160c081018252600c5467ffffffffffffffff808216835268010000000000000000808304821660208501527001000000000000000000000000000000008304821694840194909452780100000000000000000000000000000000000000000000000090910481166060830152600d549081166080830152919091046fffffffffffffffffffffffffffffffff1660a082015290565b610d9b612d63565b610da482610fd7565b50600090815260016020818152604092839020835161012081018552815473ffffffffffffffffffffffffffffffffffffffff808216835274010000000000000000000000000000000000000000820460ff908116151584870152750100000000000000000000000000000000000000000090920490911615158287015285518087018752948301546fffffffffffffffffffffffffffffffff808216875270010000000000000000000000000000000090910416858501526060808301959095528551948501865260028301546bffffffffffffffffffffffff80821687526c01000000000000000000000000820416868601527801000000000000000000000000000000000000000000000000900463ffffffff168587015260808201949094526003820154841660a0820152600482015490931660c0840152835180830185526005820154815260e08401528351918201909352600690920154825261010081019190915290565b60006106c2818363ffffffff61180a16565b610f29612cda565b610f31612cda565b6106ff836001611067565b610f44612cda565b610f4d82610fd7565b506000908152600160209081526040918290208251918201909252600590910154815290565b610f7b612cda565b610f8482610fd7565b6106c282610f9960008263ffffffff61120f16565b6000919063ffffffff61183916565b73ffffffffffffffffffffffffffffffffffffffff166000908152600691909101602052604090205460ff1690565b600054611038908210801561100f575060008281526001602052604090205473ffffffffffffffffffffffffffffffffffffffff1615155b600e547f496e76616c6964206d61726b6574000000000000000000000000000000000000611944565b50565b6000908152600191909101602052604090205473ffffffffffffffffffffffffffffffffffffffff1690565b61106f612cda565b611077612cda565b606061108a60008663ffffffff6112eb16565b9050611094612dea565b61109e82516119fa565b905060005b82518110156110da576110d28382815181106110bb57fe5b602002602001015183611a5990919063ffffffff16565b6001016110a3565b506110ec60008263ffffffff611ac316565b6110ff600087838863ffffffff611d2316565b9350935050509250929050565b805173ffffffffffffffffffffffffffffffffffffffff16600090815260049290920160209081526040808420928201518452919052902054610100900463ffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff9182166000908152600593909301602090815260408085209290931684525290205460ff1690565b611198612ced565b50815173ffffffffffffffffffffffffffffffffffffffff1660009081526004840160209081526040808320828601518452825280832084845260030182529182902082518084019093525460ff8116151583526fffffffffffffffffffffffffffffffff61010090910416908201529392505050565b611217612d04565b506000908152600191909101602090815260409182902082516060810184526002909101546bffffffffffffffffffffffff80821683526c0100000000000000000000000082041692820192909252780100000000000000000000000000000000000000000000000090910463ffffffff169181019190915290565b61129b612d04565b6112a3612cda565b6112b485858563ffffffff61183916565b90506112e283826112cb888863ffffffff61157916565b6040805160208101909152600a8a01548152611e86565b95945050505050565b805173ffffffffffffffffffffffffffffffffffffffff166000908152600483016020908152604080832082850151845290915290206060906107d890600101611ff1565b611338612cda565b600083815260018501602052604090206003015473ffffffffffffffffffffffffffffffffffffffff1661136a612cda565b6040517f41976e0900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8316906341976e09906113bc908790600401613652565b60206040518083038186803b1580156113d457600080fd5b505afa1580156113e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061140c9190810190612fa5565b80519091506112e29015157f53746f72616765000000000000000000000000000000000000000000000000007f50726963652063616e6e6f74206265207a65726f0000000000000000000000008861204d565b73ffffffffffffffffffffffffffffffffffffffff80821660008181526002602090815260408083205483526001909152902054600e546110389391909116909114907f496e76616c696420746f6b656e00000000000000000000000000000000000000611944565b6114d0612ced565b602083015183516fffffffffffffffffffffffffffffffff909116901561153c576040805180820190915260018152602084810151908201906115319084906bffffffffffffffffffffffff16670de0b6b3a764000063ffffffff6120eb16565b8152509150506106c2565b6040805180820190915260008152835160208201906115319084906bffffffffffffffffffffffff16670de0b6b3a764000063ffffffff6120eb16565b611581612ced565b506000818152600180840160209081526040928390208351808501909452909101546fffffffffffffffffffffffffffffffff8082168452700100000000000000000000000000000000909104169082015292915050565b6115e1612cda565b600984015460008481526001860160209081526040918290208251918201909252600690910154815261161e9082906116199061217f565b6121b6565b90506116598161161987600101600087815260200190815260200160002060060160405180602001604052908160008201548152505061217f565b604080516020810190915290815295945050505050565b611678612ced565b611680612d04565b611690848463ffffffff61120f16565b905061169a612ced565b6116aa858563ffffffff61157916565b905060006116be868663ffffffff61103b16565b90506116c8612ced565b6040805180820182526001815290517f70a08231000000000000000000000000000000000000000000000000000000008152602082019073ffffffffffffffffffffffffffffffffffffffff8516906370a082319061172b903090600401613652565b60206040518083038186803b15801561174357600080fd5b505afa158015611757573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061177b9190810190612fe1565b90529050611787612ced565b61178f612ced565b61179985876121cf565b90925090506117be826117b2858463ffffffff61227716565b9063ffffffff61227716565b9998505050505050505050565b805173ffffffffffffffffffffffffffffffffffffffff1660009081526004929092016020908152604080842092820151845291905290205460ff1690565b73ffffffffffffffffffffffffffffffffffffffff166000908152600791909101602052604090205460ff1690565b611841612cda565b611849612ced565b611859858563ffffffff61157916565b9050611863612ced565b61186b612ced565b61187583866121cf565b91509150611881612cda565b600087815260018901602052604090206004015473ffffffffffffffffffffffffffffffffffffffff1663e8177dcf6118c08a8a63ffffffff61103b16565b846020015186602001516040518463ffffffff1660e01b81526004016118e893929190613660565b60206040518083038186803b15801561190057600080fd5b505afa158015611914573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506119389190810190612fa5565b98975050505050505050565b826119f55761195282612291565b7f3a2000000000000000000000000000000000000000000000000000000000000061197c83612291565b60405160200161198e93929190613550565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152908290527f08c379a00000000000000000000000000000000000000000000000000000000082526119ec91600401613710565b60405180910390fd5b505050565b611a02612dea565b604080516000606082018181526080830190935290918291611a3a565b611a27612e0b565b815260200190600190039081611a1f5790505b508152602001611a4984612365565b8152600060209091015292915050565b815151611aa890157f43616368650000000000000000000000000000000000000000000000000000007f616c726561647920696e697469616c697a656400000000000000000000000000611944565b611ab682602001518261239f565b5060400180516001019052565b8060400151604051908082528060200260200182016040528015611b0157816020015b611aee612e0b565b815260200190600190039081611ae65790505b5081526000805b826020015151811015611cc957600083602001518281518110611b2757fe5b602002602001015190505b8015611cae576000611b43826123d5565b90506000611b5184836125ac565b90506000611b65888363ffffffff61103b16565b600083815260018a01602052604090205490915074010000000000000000000000000000000000000000900460ff1615611c2c576040805160a08101825283815273ffffffffffffffffffffffffffffffffffffffff8316602082015260019181019190915260608101611bdf8a8563ffffffff61157916565b516fffffffffffffffffffffffffffffffff168152602001611c088a858563ffffffff61133016565b9052875180516001890198908110611c1c57fe5b6020026020010181905250611c9a565b6040805160a08101825283815273ffffffffffffffffffffffffffffffffffffffff831660208201526000918101829052606081019190915260808101611c7a8a858563ffffffff61133016565b9052875180516001890198908110611c8e57fe5b60200260200101819052505b611ca484846125b7565b9350505050611b32565b8360400151831415611cc05750611cc9565b50600101611b08565b5060408201518251516119f591808414917f53746f7261676500000000000000000000000000000000000000000000000000917f636163686520696e697469616c697a656420696d70726f7065726c7900000000916125c0565b611d2b612cda565b611d33612cda565b611d3b612cda565b611d43612cda565b6000611d4e8761268b565b905060005b81811015611e7757611d63612ced565b611d868a611d778b8563ffffffff61269016565b518d919063ffffffff61270c16565b9050611d918161277b565b15611d9c5750611e6f565b6000611dc7611db18b8563ffffffff61269016565b608001515160208401519063ffffffff61278316565b9050611dd1612cda565b611dd96127d7565b90508915611e2457611e2160018e016000611dfa8e8863ffffffff61269016565b5181526020808201929092526040908101600020815192830190915260050154815261217f565b90505b825115611e4d57611e46611e3883836127f9565b88519063ffffffff61281216565b8752611e6b565b611e68611e5a83836121b6565b87519063ffffffff61281216565b86525b5050505b600101611d53565b50919890975095505050505050565b611e8e612d04565b611e96612ced565b611e9e612ced565b611ea885886121cf565b915091506000611eb6612851565b90506000611eee611ee08a6040015163ffffffff168463ffffffff1661286190919063ffffffff16565b89519063ffffffff61278316565b90506000611efb8561277b565b15611f0857506000611f3a565b611f1282886121b6565b9050846020015184602001511015611f3a57611f3781856020015187602001516128a3565b90505b81811115611f4457fe5b60408051606081019091528a518190611f8d90611f88906bffffffffffffffffffffffff16611f7c8188670de0b6b3a76400006128a3565b9063ffffffff61281216565b6128b9565b6bffffffffffffffffffffffff908116825260208d810151920191611fc491611f889116611f7c8187670de0b6b3a76400006128a3565b6bffffffffffffffffffffffff1681526020018463ffffffff16815250955050505050505b949350505050565b60608160000180548060200260200160405190810160405280929190818152602001828054801561204157602002820191906000526020600020905b81548152602001906001019080831161202d575b50505050509050919050565b836120e55761205b83612291565b7f3a2000000000000000000000000000000000000000000000000000000000000061208584612291565b7f203c0000000000000000000000000000000000000000000000000000000000006120af85612918565b60405161198e9594939291907f3e0000000000000000000000000000000000000000000000000000000000000090602001613578565b50505050565b60008315806120f8575082155b1561210f57612108600083612a27565b90506107d8565b6000612121858563ffffffff61278316565b90506112e261214c6001611f7c6002612140888463ffffffff61286116565b9063ffffffff612a2716565b61215c838663ffffffff612a6916565b101561216957600061216c565b60015b60ff16611f7c838663ffffffff612a2716565b612187612cda565b6040805160208101909152825181906121ae90670de0b6b3a764000063ffffffff61281216565b905292915050565b60006107d8838360000151670de0b6b3a76400006128a3565b6121d7612ced565b6121df612ced565b6121e7612ced565b5060408051808201909152600181526020858101516fffffffffffffffffffffffffffffffff169082015261221a612ced565b50604080518082019091526000815285516fffffffffffffffffffffffffffffffff16602082015261224a612ced565b61225483876114c8565b905061225e612ced565b61226883886114c8565b91989197509095505050505050565b61227f612ced565b6107d88361228c84612aab565b612ad2565b606080826040516020016122a5919061353b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152919052905060205b801561234e5781517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9091019082908290811061231157fe5b01602001517fff00000000000000000000000000000000000000000000000000000000000000161561234957600101815290506106ab565b6122d8565b505060408051600081526020810190915292915050565b60606001610100830401604051908082528060200260200182016040528015612398578160200160208202803883390190505b5092915050565b815161010082049060ff8316906001821b908590849081106123bd57fe5b60200260200101818151179150818152505050505050565b600060ff6fffffffffffffffffffffffffffffffff831615612418577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8001612420565b608083901c92505b67ffffffffffffffff831615612457577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00161245f565b604083901c92505b63ffffffff831615612492577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00161249a565b602083901c92505b61ffff8316156124cb577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016124d3565b601083901c92505b60ff831615612503577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80161250b565b600883901c92505b600f83161561253b577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc01612543565b600483901c92505b6003831615612573577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0161257b565b600283901c92505b60018316156106c2577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0192915050565b610100919091020190565b6001901b900390565b84612684576125ce84612291565b7f3a200000000000000000000000000000000000000000000000000000000000006125f885612291565b7f203c00000000000000000000000000000000000000000000000000000000000061262286612918565b7f2c2000000000000000000000000000000000000000000000000000000000000061264c87612918565b60405161198e97969594939291907f3e00000000000000000000000000000000000000000000000000000000000000906020016135d6565b5050505050565b515190565b612698612e0b565b8251516126ee90808410907f4361636865000000000000000000000000000000000000000000000000000000907f696e76616c696420696e646578000000000000000000000000000000000000009086906125c0565b82518051839081106126fc57fe5b6020026020010151905092915050565b612714612ced565b61271c612ced565b61272d85858563ffffffff61119016565b905061273881612b64565b1561274d57612745612b7e565b9150506107d8565b612755612d04565b612765868563ffffffff61120f16565b905061277182826114c8565b9695505050505050565b602001511590565b600082612792575060006106c2565b8282028284828161279f57fe5b04146107d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ec90613731565b6127df612cda565b506040805160208101909152670de0b6b3a7640000815290565b60006107d883670de0b6b3a764000084600001516128a3565b6000828201838110156107d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ec90613721565b600061285c42612b9e565b905090565b60006107d883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612bf5565b6000611fe982612140868663ffffffff61278316565b6000816106c26bffffffffffffffffffffffff821682147f4d617468000000000000000000000000000000000000000000000000000000007f556e73616665206361737420746f2075696e74393600000000000000000000008461204d565b606081612959575060408051808201909152600181527f300000000000000000000000000000000000000000000000000000000000000060208201526106ab565b8160005b811561297157600101600a8204915061295d565b6060816040519080825280601f01601f19166020018201604052801561299e576020820181803883390190505b508593509050815b8015612a1e577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01600a840660300160f81b8282815181106129e457fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a840493506129a6565b50949350505050565b60006107d883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612c3b565b60006107d883836040518060400160405280601881526020017f536166654d6174683a206d6f64756c6f206279207a65726f0000000000000000815250612c8c565b612ab3612ced565b5060408051808201909152815115815260208083015190820152919050565b612ada612ced565b612ae2612ced565b8251845115159015151415612b155783511515815260208085015190840151612b0b9190612812565b60208201526107d8565b8260200151846020015110612b3e5783511515815260208085015190840151612b0b9190612861565b82511515815260208084015190850151612b589190612861565b60208201529392505050565b602001516fffffffffffffffffffffffffffffffff161590565b612b86612ced565b50604080518082019091526000808252602082015290565b6000816106c263ffffffff821682147f4d617468000000000000000000000000000000000000000000000000000000007f556e73616665206361737420746f2075696e74333200000000000000000000008461204d565b60008184841115612c33576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ec9190613710565b505050900390565b60008183612c76576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ec9190613710565b506000838581612c8257fe5b0495945050505050565b60008183612cc7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ec9190613710565b50828481612cd157fe5b06949350505050565b6040518060200160405280600081525090565b604080518082019091526000808252602082015290565b604080516060810182526000808252602082018190529181019190915290565b6040518060800160405280612d37612cda565b8152602001612d44612cda565b8152602001612d51612cda565b8152602001612d5e612cda565b905290565b60408051610120810182526000808252602082018190529181019190915260608101612d8d612ced565b8152602001612d9a612d04565b81526000602082018190526040820152606001612d51612cda565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b60405180606001604052806060815260200160608152602001600081525090565b6040518060a0016040528060008152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160001515815260200160006fffffffffffffffffffffffffffffffff168152602001612d5e612cda565b80356106c28161397e565b600060408284031215612e8157600080fd5b612e8b6040613814565b90506000612e998484612e64565b8252506020612eaa84848301612ee9565b60208301525092915050565b600060208284031215612ec857600080fd5b612ed26020613814565b90506000612ee08484612ef4565b82525092915050565b80356106c281613992565b80516106c281613992565b600060208284031215612f1157600080fd5b6000611fe98484612e64565b60008060408385031215612f3057600080fd5b6000612f3c8585612e64565b9250506020612f4d85828601612e64565b9150509250929050565b600060408284031215612f6957600080fd5b6000611fe98484612e6f565b60008060608385031215612f8857600080fd5b6000612f948585612e6f565b9250506040612f4d85828601612ee9565b600060208284031215612fb757600080fd5b6000611fe98484612eb6565b600060208284031215612fd557600080fd5b6000611fe98484612ee9565b600060208284031215612ff357600080fd5b6000611fe98484612ef4565b6000806040838503121561301257600080fd5b600061301e8585612ee9565b9250506020612f4d85828601612ee9565b600061303b838361306f565b505060200190565b600061304f83836133fb565b505060400190565b600061304f83836134ea565b600061303b8383613517565b6130788161384e565b82525050565b600061308982613841565b6130938185613845565b935061309e8361383b565b8060005b838110156130cc5781516130b6888261302f565b97506130c18361383b565b9250506001016130a2565b509495945050505050565b60006130e282613841565b6130ec8185613845565b93506130f78361383b565b8060005b838110156130cc57815161310f8882613043565b975061311a8361383b565b9250506001016130fb565b600061313082613841565b61313a8185613845565b93506131458361383b565b8060005b838110156130cc57815161315d8882613057565b97506131688361383b565b925050600101613149565b600061317e82613841565b6131888185613845565b93506131938361383b565b8060005b838110156130cc5781516131ab8882613063565b97506131b68361383b565b925050600101613197565b61307881613859565b6130786131d68261385e565b6138a8565b6130786131d682613883565b6130786131d6826138a8565b60006131fe82613841565b61320881856106ab565b9350613218818560208601613920565b9290920192915050565b6130788161390a565b61307881613915565b600061323f82613841565b6132498185613845565b9350613259818560208601613920565b6132628161394c565b9093019392505050565b6000613279601b83613845565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000815260200192915050565b60006132b2602183613845565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f81527f7700000000000000000000000000000000000000000000000000000000000000602082015260400192915050565b805160208301906120e58482613517565b805160608301906133268482613532565b5060208201516133396020850182613532565b5060408201516120e56040850182613520565b805161018083019061335e848261306f565b50602082015161337160208501826131c1565b50604082015161338460408501826131c1565b50606082015161339760608501826134d9565b5060808201516133aa60a0850182613315565b5060a08201516133be610100850182613222565b5060c08201516133d2610120850182613222565b5060e08201516133e6610140850182613304565b506101008201516120e5610160850182613304565b8051604083019061340c84826131c1565b5060208201516120e5602085018261350e565b805160c08301906134308482613529565b5060208201516134436020850182613529565b5060408201516134566040850182613529565b5060608201516134696060850182613529565b50608082015161347c6080850182613529565b5060a08201516120e560a085018261350e565b805160808301906134a08482613304565b5060208201516134b36020850182613304565b5060408201516134c66040850182613304565b5060608201516120e56060850182613304565b8051604083019061340c848261350e565b805160408301906134fb84826131c1565b5060208201516120e56020850182613517565b613078816138b5565b613078816138a8565b613078816138e3565b613078816138ec565b613078816138f9565b600061354782846131e7565b50602001919050565b600061355c82866131f3565b915061356882856131db565b6002820191506112e282846131f3565b600061358482896131f3565b915061359082886131db565b6002820191506135a082876131f3565b91506135ac82866131db565b6002820191506135bc82856131f3565b91506135c882846131ca565b506001019695505050505050565b60006135e2828b6131f3565b91506135ee828a6131db565b6002820191506135fe82896131f3565b915061360a82886131db565b60028201915061361a82876131f3565b915061362682866131db565b60028201915061363682856131f3565b915061364282846131ca565b5060010198975050505050505050565b602081016106c2828461306f565b6060810161366e828661306f565b61367b6020830185613517565b611fe96040830184613517565b602080825281016107d88184613173565b608080825281016136aa8187613173565b905081810360208301526136be818661307e565b905081810360408301526136d281856130d7565b905081810360608301526127718184613125565b602081016106c282846131c1565b602081016106c28284613222565b602081016106c2828461322b565b602080825281016107d88184613234565b602080825281016106c28161326c565b602080825281016106c2816132a5565b602081016106c28284613304565b606081016106c28284613315565b61018081016106c2828461334c565b610220810161377b828761334c565b613789610180830186613315565b6137976101e0830185613304565b6112e2610200830184613304565b604081016106c282846133fb565b60c081016106c2828461341f565b608081016106c2828461348f565b604081016106c282846134d9565b604081016137eb8285613304565b6107d86020830184613304565b604081016106c282846134ea565b602081016106c28284613517565b60405181810167ffffffffffffffff8111828210171561383357600080fd5b604052919050565b60200190565b5190565b90815260200190565b60006106c2826138ca565b151590565b7fff000000000000000000000000000000000000000000000000000000000000001690565b7fffff0000000000000000000000000000000000000000000000000000000000001690565b90565b806106ab81613974565b6fffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1690565b63ffffffff1690565b67ffffffffffffffff1690565b6bffffffffffffffffffffffff1690565b60006106c28261384e565b60006106c2826138ab565b60005b8381101561393b578181015183820152602001613923565b838111156120e55750506000910152565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01690565b6003811061103857fe5b6139878161384e565b811461103857600080fd5b613987816138a856fea365627a7a723158203dfb57be1bc5d782cf5c2aae5950f71accf993ed68cc69ff868793bd475dcb026c6578706572696d656e74616cf564736f6c63430005100040",
|
|
1417
|
-
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106102775760003560e01c80638928378e11610160578063d5ecf7c5116100d8578063eb44fdd31161008c578063f941605211610071578063f9416052146105a2578063fd04b606146105b5578063fd47eda6146105c857610277565b8063eb44fdd31461056f578063f1061ba81461058f57610277565b8063e51bfcb4116100bd578063e51bfcb414610532578063e552022814610552578063eb1c6e6b1461055a57610277565b8063d5ecf7c51461050c578063deec053d1461051f57610277565b8063c14609421161012f578063c8e1882611610114578063c8e18826146104c6578063cb04a34c146104d9578063d24c48bc146104f957610277565b8063c14609421461049e578063c190c2ec146104a657610277565b80638928378e146104425780638fae3be11461045557806398d4611b14610468578063b548b8921461047b57610277565b80633a031bf0116101f35780635735a430116101c257806369794795116101a757806369794795146104025780636a8194e7146104175780637e9eaf411461043a57610277565b80635735a430146103dc5780635ac7d17c146103ef57610277565b80633a031bf01461038157806347d1b53c146103945780634f3c1542146103b457806356ea84b2146103bc57610277565b8063133683641161024a5780631a7777bb1161022f5780631a7777bb14610339578063295c39a51461035957806334fd45f11461036e57610277565b80631336836414610306578063197f0f051461032657610277565b80630339a0c41461027c578063052f72d7146102a5578063062bd3e9146102c5578063124f914c146102e5575b600080fd5b61028f61028a366004612fc3565b6105db565b60405161029c9190613688565b60405180910390f35b6102b86102b3366004612eff565b6106b0565b60405161029c91906136e6565b6102d86102d3366004612fc3565b6106c8565b60405161029c9190613652565b6102f86102f3366004612f57565b6106e4565b60405161029c9291906137dd565b610319610314366004612fc3565b610708565b60405161029c91906136f4565b610319610334366004612fc3565b61073f565b61034c610347366004612fc3565b610776565b60405161029c9190613741565b6103616107ad565b60405161029c9190613806565b61036161037c366004612f57565b6107b3565b6102b861038f366004612f1d565b6107c5565b6103a76103a2366004612f75565b6107df565b60405161029c91906137a5565b61034c610802565b6103cf6103ca366004612fc3565b61081e565b60405161029c919061374f565b6102b86103ea366004612fc3565b610853565b6102b86103fd366004612fc3565b61088d565b61040a6108c6565b60405161029c91906137c1565b61042a610425366004612f57565b610922565b60405161029c9493929190613699565b61034c610ad9565b61034c610450366004612fc3565b610af5565b610361610463366004612eff565b610b2a565b61028f610476366004612f57565b610b5e565b61048e610489366004612fc3565b610b71565b60405161029c949392919061376c565b61034c610bcd565b6104b96104b4366004612f75565b610be9565b60405161029c91906137f8565b6103a76104d4366004612f75565b610c29565b6104ec6104e7366004612fc3565b610c31565b60405161029c91906137cf565b61034c610507366004612fff565b610c53565b6104b961051a366004612fc3565b610c7f565b6103cf61052d366004612fc3565b610ca1565b610545610540366004612f57565b610cc3565b60405161029c9190613702565b61034c610cd5565b610562610cf1565b60405161029c91906137b3565b61058261057d366004612fc3565b610d93565b60405161029c919061375d565b6102b861059d366004612eff565b610f0f565b6102f86105b0366004612f57565b610f21565b61034c6105c3366004612fc3565b610f3c565b61034c6105d6366004612fc3565b610f73565b6060600080905060608360405190808252806020026020018201604052801561060e578160200160208202803883390190505b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60005260036020527fb1ee3b3d0d99532dd9f14b22c0b908d4eec0e052c3827bbed2d6c3986954d08c549091505b801580159061066c57508483105b156106a6578082848060010195508151811061068457fe5b602090810291909101810191909152600091825260039052604090205461065e565b509150505b919050565b60006106c2818363ffffffff610fa816565b92915050565b60006106d382610fd7565b6106c260008363ffffffff61103b16565b6106ec612cda565b6106f4612cda565b6106ff836000611067565b91509150915091565b600061071382610fd7565b5060009081526001602052604090206003015473ffffffffffffffffffffffffffffffffffffffff1690565b600061074a82610fd7565b5060009081526001602052604090206004015473ffffffffffffffffffffffffffffffffffffffff1690565b61077e612cda565b61078782610fd7565b506000908152600160209081526040918290208251918201909252600690910154815290565b60005490565b60006106c2818363ffffffff61110c16565b60006107d881848463ffffffff61115316565b9392505050565b6107e7612ced565b6107f082610fd7565b6107d86000848463ffffffff61119016565b61080a612cda565b506040805160208101909152600854815290565b610826612d04565b61082f82610fd7565b6106c28261084460008263ffffffff61120f16565b6000919063ffffffff61129316565b600061085e82610fd7565b506000908152600160205260409020547501000000000000000000000000000000000000000000900460ff1690565b600061089882610fd7565b5060009081526001602052604090205474010000000000000000000000000000000000000000900460ff1690565b6108ce612d24565b506040805160a08101825260085460808201908152815281516020818101845260095482528083019190915282518082018452600a548152828401528251908101909252600b548252606081019190915290565b60608080808061093960008763ffffffff6112eb16565b905060608151604051908082528060200260200182016040528015610968578160200160208202803883390190505b509050606082516040519080825280602002602001820160405280156109a857816020015b610995612ced565b81526020019060019003908161098d5790505b509050606083516040519080825280602002602001820160405280156109e857816020015b6109d5612ced565b8152602001906001900390816109cd5790505b50905060005b8451811015610ac957610a13858281518110610a0657fe5b60200260200101516106c8565b848281518110610a1f57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050610a768a868381518110610a6957fe5b60200260200101516107df565b838281518110610a8257fe5b6020026020010181905250610aaa8a868381518110610a9d57fe5b6020026020010151610be9565b828281518110610ab657fe5b60209081029190910101526001016109ee565b5092989197509550909350915050565b610ae1612cda565b506040805160208101909152600b54815290565b610afd612cda565b610b0682610fd7565b6106c282610b1b60008263ffffffff61103b16565b6000919063ffffffff61133016565b6000610b358261145f565b5073ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b60606106c260008363ffffffff6112eb16565b610b79612d63565b610b81612d04565b610b89612cda565b610b91612cda565b610b9a85610fd7565b610ba385610d93565b610bac8661081e565b610bb587610af5565b610bbe88610f73565b93509350935093509193509193565b610bd5612cda565b506040805160208101909152600954815290565b610bf1612ced565b610bfa82610fd7565b6107d8610c0f6000858563ffffffff61119016565b610c248461084460008263ffffffff61120f16565b6114c8565b6107f0612ced565b610c39612ced565b610c4282610fd7565b6106c260008363ffffffff61157916565b610c5b612cda565b610c6483610fd7565b610c6d82610fd7565b6107d86000848463ffffffff6115d916565b610c87612ced565b610c9082610fd7565b6106c260008363ffffffff61167016565b610ca9612d04565b610cb282610fd7565b6106c260008363ffffffff61120f16565b60006106c2818363ffffffff6117cb16565b610cdd612cda565b506040805160208101909152600a54815290565b610cf9612db5565b506040805160c081018252600c5467ffffffffffffffff808216835268010000000000000000808304821660208501527001000000000000000000000000000000008304821694840194909452780100000000000000000000000000000000000000000000000090910481166060830152600d549081166080830152919091046fffffffffffffffffffffffffffffffff1660a082015290565b610d9b612d63565b610da482610fd7565b50600090815260016020818152604092839020835161012081018552815473ffffffffffffffffffffffffffffffffffffffff808216835274010000000000000000000000000000000000000000820460ff908116151584870152750100000000000000000000000000000000000000000090920490911615158287015285518087018752948301546fffffffffffffffffffffffffffffffff808216875270010000000000000000000000000000000090910416858501526060808301959095528551948501865260028301546bffffffffffffffffffffffff80821687526c01000000000000000000000000820416868601527801000000000000000000000000000000000000000000000000900463ffffffff168587015260808201949094526003820154841660a0820152600482015490931660c0840152835180830185526005820154815260e08401528351918201909352600690920154825261010081019190915290565b60006106c2818363ffffffff61180a16565b610f29612cda565b610f31612cda565b6106ff836001611067565b610f44612cda565b610f4d82610fd7565b506000908152600160209081526040918290208251918201909252600590910154815290565b610f7b612cda565b610f8482610fd7565b6106c282610f9960008263ffffffff61120f16565b6000919063ffffffff61183916565b73ffffffffffffffffffffffffffffffffffffffff166000908152600691909101602052604090205460ff1690565b600054611038908210801561100f575060008281526001602052604090205473ffffffffffffffffffffffffffffffffffffffff1615155b600e547f496e76616c6964206d61726b6574000000000000000000000000000000000000611944565b50565b6000908152600191909101602052604090205473ffffffffffffffffffffffffffffffffffffffff1690565b61106f612cda565b611077612cda565b606061108a60008663ffffffff6112eb16565b9050611094612dea565b61109e82516119fa565b905060005b82518110156110da576110d28382815181106110bb57fe5b602002602001015183611a5990919063ffffffff16565b6001016110a3565b506110ec60008263ffffffff611ac316565b6110ff600087838863ffffffff611d2316565b9350935050509250929050565b805173ffffffffffffffffffffffffffffffffffffffff16600090815260049290920160209081526040808420928201518452919052902054610100900463ffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff9182166000908152600593909301602090815260408085209290931684525290205460ff1690565b611198612ced565b50815173ffffffffffffffffffffffffffffffffffffffff1660009081526004840160209081526040808320828601518452825280832084845260030182529182902082518084019093525460ff8116151583526fffffffffffffffffffffffffffffffff61010090910416908201529392505050565b611217612d04565b506000908152600191909101602090815260409182902082516060810184526002909101546bffffffffffffffffffffffff80821683526c0100000000000000000000000082041692820192909252780100000000000000000000000000000000000000000000000090910463ffffffff169181019190915290565b61129b612d04565b6112a3612cda565b6112b485858563ffffffff61183916565b90506112e283826112cb888863ffffffff61157916565b6040805160208101909152600a8a01548152611e86565b95945050505050565b805173ffffffffffffffffffffffffffffffffffffffff166000908152600483016020908152604080832082850151845290915290206060906107d890600101611ff1565b611338612cda565b600083815260018501602052604090206003015473ffffffffffffffffffffffffffffffffffffffff1661136a612cda565b6040517f41976e0900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8316906341976e09906113bc908790600401613652565b60206040518083038186803b1580156113d457600080fd5b505afa1580156113e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061140c9190810190612fa5565b80519091506112e29015157f53746f72616765000000000000000000000000000000000000000000000000007f50726963652063616e6e6f74206265207a65726f0000000000000000000000008861204d565b73ffffffffffffffffffffffffffffffffffffffff80821660008181526002602090815260408083205483526001909152902054600e546110389391909116909114907f496e76616c696420746f6b656e00000000000000000000000000000000000000611944565b6114d0612ced565b602083015183516fffffffffffffffffffffffffffffffff909116901561153c576040805180820190915260018152602084810151908201906115319084906bffffffffffffffffffffffff16670de0b6b3a764000063ffffffff6120eb16565b8152509150506106c2565b6040805180820190915260008152835160208201906115319084906bffffffffffffffffffffffff16670de0b6b3a764000063ffffffff6120eb16565b611581612ced565b506000818152600180840160209081526040928390208351808501909452909101546fffffffffffffffffffffffffffffffff8082168452700100000000000000000000000000000000909104169082015292915050565b6115e1612cda565b600984015460008481526001860160209081526040918290208251918201909252600690910154815261161e9082906116199061217f565b6121b6565b90506116598161161987600101600087815260200190815260200160002060060160405180602001604052908160008201548152505061217f565b604080516020810190915290815295945050505050565b611678612ced565b611680612d04565b611690848463ffffffff61120f16565b905061169a612ced565b6116aa858563ffffffff61157916565b905060006116be868663ffffffff61103b16565b90506116c8612ced565b6040805180820182526001815290517f70a08231000000000000000000000000000000000000000000000000000000008152602082019073ffffffffffffffffffffffffffffffffffffffff8516906370a082319061172b903090600401613652565b60206040518083038186803b15801561174357600080fd5b505afa158015611757573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061177b9190810190612fe1565b90529050611787612ced565b61178f612ced565b61179985876121cf565b90925090506117be826117b2858463ffffffff61227716565b9063ffffffff61227716565b9998505050505050505050565b805173ffffffffffffffffffffffffffffffffffffffff1660009081526004929092016020908152604080842092820151845291905290205460ff1690565b73ffffffffffffffffffffffffffffffffffffffff166000908152600791909101602052604090205460ff1690565b611841612cda565b611849612ced565b611859858563ffffffff61157916565b9050611863612ced565b61186b612ced565b61187583866121cf565b91509150611881612cda565b600087815260018901602052604090206004015473ffffffffffffffffffffffffffffffffffffffff1663e8177dcf6118c08a8a63ffffffff61103b16565b846020015186602001516040518463ffffffff1660e01b81526004016118e893929190613660565b60206040518083038186803b15801561190057600080fd5b505afa158015611914573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506119389190810190612fa5565b98975050505050505050565b826119f55761195282612291565b7f3a2000000000000000000000000000000000000000000000000000000000000061197c83612291565b60405160200161198e93929190613550565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152908290527f08c379a00000000000000000000000000000000000000000000000000000000082526119ec91600401613710565b60405180910390fd5b505050565b611a02612dea565b604080516000606082018181526080830190935290918291611a3a565b611a27612e0b565b815260200190600190039081611a1f5790505b508152602001611a4984612365565b8152600060209091015292915050565b815151611aa890157f43616368650000000000000000000000000000000000000000000000000000007f616c726561647920696e697469616c697a656400000000000000000000000000611944565b611ab682602001518261239f565b5060400180516001019052565b8060400151604051908082528060200260200182016040528015611b0157816020015b611aee612e0b565b815260200190600190039081611ae65790505b5081526000805b826020015151811015611cc957600083602001518281518110611b2757fe5b602002602001015190505b8015611cae576000611b43826123d5565b90506000611b5184836125ac565b90506000611b65888363ffffffff61103b16565b600083815260018a01602052604090205490915074010000000000000000000000000000000000000000900460ff1615611c2c576040805160a08101825283815273ffffffffffffffffffffffffffffffffffffffff8316602082015260019181019190915260608101611bdf8a8563ffffffff61157916565b516fffffffffffffffffffffffffffffffff168152602001611c088a858563ffffffff61133016565b9052875180516001890198908110611c1c57fe5b6020026020010181905250611c9a565b6040805160a08101825283815273ffffffffffffffffffffffffffffffffffffffff831660208201526000918101829052606081019190915260808101611c7a8a858563ffffffff61133016565b9052875180516001890198908110611c8e57fe5b60200260200101819052505b611ca484846125b7565b9350505050611b32565b8360400151831415611cc05750611cc9565b50600101611b08565b5060408201518251516119f591808414917f53746f7261676500000000000000000000000000000000000000000000000000917f636163686520696e697469616c697a656420696d70726f7065726c7900000000916125c0565b611d2b612cda565b611d33612cda565b611d3b612cda565b611d43612cda565b6000611d4e8761268b565b905060005b81811015611e7757611d63612ced565b611d868a611d778b8563ffffffff61269016565b518d919063ffffffff61270c16565b9050611d918161277b565b15611d9c5750611e6f565b6000611dc7611db18b8563ffffffff61269016565b608001515160208401519063ffffffff61278316565b9050611dd1612cda565b611dd96127d7565b90508915611e2457611e2160018e016000611dfa8e8863ffffffff61269016565b5181526020808201929092526040908101600020815192830190915260050154815261217f565b90505b825115611e4d57611e46611e3883836127f9565b88519063ffffffff61281216565b8752611e6b565b611e68611e5a83836121b6565b87519063ffffffff61281216565b86525b5050505b600101611d53565b50919890975095505050505050565b611e8e612d04565b611e96612ced565b611e9e612ced565b611ea885886121cf565b915091506000611eb6612851565b90506000611eee611ee08a6040015163ffffffff168463ffffffff1661286190919063ffffffff16565b89519063ffffffff61278316565b90506000611efb8561277b565b15611f0857506000611f3a565b611f1282886121b6565b9050846020015184602001511015611f3a57611f3781856020015187602001516128a3565b90505b81811115611f4457fe5b60408051606081019091528a518190611f8d90611f88906bffffffffffffffffffffffff16611f7c8188670de0b6b3a76400006128a3565b9063ffffffff61281216565b6128b9565b6bffffffffffffffffffffffff908116825260208d810151920191611fc491611f889116611f7c8187670de0b6b3a76400006128a3565b6bffffffffffffffffffffffff1681526020018463ffffffff16815250955050505050505b949350505050565b60608160000180548060200260200160405190810160405280929190818152602001828054801561204157602002820191906000526020600020905b81548152602001906001019080831161202d575b50505050509050919050565b836120e55761205b83612291565b7f3a2000000000000000000000000000000000000000000000000000000000000061208584612291565b7f203c0000000000000000000000000000000000000000000000000000000000006120af85612918565b60405161198e9594939291907f3e0000000000000000000000000000000000000000000000000000000000000090602001613578565b50505050565b60008315806120f8575082155b1561210f57612108600083612a27565b90506107d8565b6000612121858563ffffffff61278316565b90506112e261214c6001611f7c6002612140888463ffffffff61286116565b9063ffffffff612a2716565b61215c838663ffffffff612a6916565b101561216957600061216c565b60015b60ff16611f7c838663ffffffff612a2716565b612187612cda565b6040805160208101909152825181906121ae90670de0b6b3a764000063ffffffff61281216565b905292915050565b60006107d8838360000151670de0b6b3a76400006128a3565b6121d7612ced565b6121df612ced565b6121e7612ced565b5060408051808201909152600181526020858101516fffffffffffffffffffffffffffffffff169082015261221a612ced565b50604080518082019091526000815285516fffffffffffffffffffffffffffffffff16602082015261224a612ced565b61225483876114c8565b905061225e612ced565b61226883886114c8565b91989197509095505050505050565b61227f612ced565b6107d88361228c84612aab565b612ad2565b606080826040516020016122a5919061353b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152919052905060205b801561234e5781517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9091019082908290811061231157fe5b01602001517fff00000000000000000000000000000000000000000000000000000000000000161561234957600101815290506106ab565b6122d8565b505060408051600081526020810190915292915050565b60606001610100830401604051908082528060200260200182016040528015612398578160200160208202803883390190505b5092915050565b815161010082049060ff8316906001821b908590849081106123bd57fe5b60200260200101818151179150818152505050505050565b600060ff6fffffffffffffffffffffffffffffffff831615612418577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8001612420565b608083901c92505b67ffffffffffffffff831615612457577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00161245f565b604083901c92505b63ffffffff831615612492577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00161249a565b602083901c92505b61ffff8316156124cb577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016124d3565b601083901c92505b60ff831615612503577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80161250b565b600883901c92505b600f83161561253b577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc01612543565b600483901c92505b6003831615612573577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0161257b565b600283901c92505b60018316156106c2577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0192915050565b610100919091020190565b6001901b900390565b84612684576125ce84612291565b7f3a200000000000000000000000000000000000000000000000000000000000006125f885612291565b7f203c00000000000000000000000000000000000000000000000000000000000061262286612918565b7f2c2000000000000000000000000000000000000000000000000000000000000061264c87612918565b60405161198e97969594939291907f3e00000000000000000000000000000000000000000000000000000000000000906020016135d6565b5050505050565b515190565b612698612e0b565b8251516126ee90808410907f4361636865000000000000000000000000000000000000000000000000000000907f696e76616c696420696e646578000000000000000000000000000000000000009086906125c0565b82518051839081106126fc57fe5b6020026020010151905092915050565b612714612ced565b61271c612ced565b61272d85858563ffffffff61119016565b905061273881612b64565b1561274d57612745612b7e565b9150506107d8565b612755612d04565b612765868563ffffffff61120f16565b905061277182826114c8565b9695505050505050565b602001511590565b600082612792575060006106c2565b8282028284828161279f57fe5b04146107d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ec90613731565b6127df612cda565b506040805160208101909152670de0b6b3a7640000815290565b60006107d883670de0b6b3a764000084600001516128a3565b6000828201838110156107d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ec90613721565b600061285c42612b9e565b905090565b60006107d883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612bf5565b6000611fe982612140868663ffffffff61278316565b6000816106c26bffffffffffffffffffffffff821682147f4d617468000000000000000000000000000000000000000000000000000000007f556e73616665206361737420746f2075696e74393600000000000000000000008461204d565b606081612959575060408051808201909152600181527f300000000000000000000000000000000000000000000000000000000000000060208201526106ab565b8160005b811561297157600101600a8204915061295d565b6060816040519080825280601f01601f19166020018201604052801561299e576020820181803883390190505b508593509050815b8015612a1e577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01600a840660300160f81b8282815181106129e457fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a840493506129a6565b50949350505050565b60006107d883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612c3b565b60006107d883836040518060400160405280601881526020017f536166654d6174683a206d6f64756c6f206279207a65726f0000000000000000815250612c8c565b612ab3612ced565b5060408051808201909152815115815260208083015190820152919050565b612ada612ced565b612ae2612ced565b8251845115159015151415612b155783511515815260208085015190840151612b0b9190612812565b60208201526107d8565b8260200151846020015110612b3e5783511515815260208085015190840151612b0b9190612861565b82511515815260208084015190850151612b589190612861565b60208201529392505050565b602001516fffffffffffffffffffffffffffffffff161590565b612b86612ced565b50604080518082019091526000808252602082015290565b6000816106c263ffffffff821682147f4d617468000000000000000000000000000000000000000000000000000000007f556e73616665206361737420746f2075696e74333200000000000000000000008461204d565b60008184841115612c33576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ec9190613710565b505050900390565b60008183612c76576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ec9190613710565b506000838581612c8257fe5b0495945050505050565b60008183612cc7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ec9190613710565b50828481612cd157fe5b06949350505050565b6040518060200160405280600081525090565b604080518082019091526000808252602082015290565b604080516060810182526000808252602082018190529181019190915290565b6040518060800160405280612d37612cda565b8152602001612d44612cda565b8152602001612d51612cda565b8152602001612d5e612cda565b905290565b60408051610120810182526000808252602082018190529181019190915260608101612d8d612ced565b8152602001612d9a612d04565b81526000602082018190526040820152606001612d51612cda565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b60405180606001604052806060815260200160608152602001600081525090565b6040518060a0016040528060008152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160001515815260200160006fffffffffffffffffffffffffffffffff168152602001612d5e612cda565b80356106c28161397e565b600060408284031215612e8157600080fd5b612e8b6040613814565b90506000612e998484612e64565b8252506020612eaa84848301612ee9565b60208301525092915050565b600060208284031215612ec857600080fd5b612ed26020613814565b90506000612ee08484612ef4565b82525092915050565b80356106c281613992565b80516106c281613992565b600060208284031215612f1157600080fd5b6000611fe98484612e64565b60008060408385031215612f3057600080fd5b6000612f3c8585612e64565b9250506020612f4d85828601612e64565b9150509250929050565b600060408284031215612f6957600080fd5b6000611fe98484612e6f565b60008060608385031215612f8857600080fd5b6000612f948585612e6f565b9250506040612f4d85828601612ee9565b600060208284031215612fb757600080fd5b6000611fe98484612eb6565b600060208284031215612fd557600080fd5b6000611fe98484612ee9565b600060208284031215612ff357600080fd5b6000611fe98484612ef4565b6000806040838503121561301257600080fd5b600061301e8585612ee9565b9250506020612f4d85828601612ee9565b600061303b838361306f565b505060200190565b600061304f83836133fb565b505060400190565b600061304f83836134ea565b600061303b8383613517565b6130788161384e565b82525050565b600061308982613841565b6130938185613845565b935061309e8361383b565b8060005b838110156130cc5781516130b6888261302f565b97506130c18361383b565b9250506001016130a2565b509495945050505050565b60006130e282613841565b6130ec8185613845565b93506130f78361383b565b8060005b838110156130cc57815161310f8882613043565b975061311a8361383b565b9250506001016130fb565b600061313082613841565b61313a8185613845565b93506131458361383b565b8060005b838110156130cc57815161315d8882613057565b97506131688361383b565b925050600101613149565b600061317e82613841565b6131888185613845565b93506131938361383b565b8060005b838110156130cc5781516131ab8882613063565b97506131b68361383b565b925050600101613197565b61307881613859565b6130786131d68261385e565b6138a8565b6130786131d682613883565b6130786131d6826138a8565b60006131fe82613841565b61320881856106ab565b9350613218818560208601613920565b9290920192915050565b6130788161390a565b61307881613915565b600061323f82613841565b6132498185613845565b9350613259818560208601613920565b6132628161394c565b9093019392505050565b6000613279601b83613845565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000815260200192915050565b60006132b2602183613845565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f81527f7700000000000000000000000000000000000000000000000000000000000000602082015260400192915050565b805160208301906120e58482613517565b805160608301906133268482613532565b5060208201516133396020850182613532565b5060408201516120e56040850182613520565b805161018083019061335e848261306f565b50602082015161337160208501826131c1565b50604082015161338460408501826131c1565b50606082015161339760608501826134d9565b5060808201516133aa60a0850182613315565b5060a08201516133be610100850182613222565b5060c08201516133d2610120850182613222565b5060e08201516133e6610140850182613304565b506101008201516120e5610160850182613304565b8051604083019061340c84826131c1565b5060208201516120e5602085018261350e565b805160c08301906134308482613529565b5060208201516134436020850182613529565b5060408201516134566040850182613529565b5060608201516134696060850182613529565b50608082015161347c6080850182613529565b5060a08201516120e560a085018261350e565b805160808301906134a08482613304565b5060208201516134b36020850182613304565b5060408201516134c66040850182613304565b5060608201516120e56060850182613304565b8051604083019061340c848261350e565b805160408301906134fb84826131c1565b5060208201516120e56020850182613517565b613078816138b5565b613078816138a8565b613078816138e3565b613078816138ec565b613078816138f9565b600061354782846131e7565b50602001919050565b600061355c82866131f3565b915061356882856131db565b6002820191506112e282846131f3565b600061358482896131f3565b915061359082886131db565b6002820191506135a082876131f3565b91506135ac82866131db565b6002820191506135bc82856131f3565b91506135c882846131ca565b506001019695505050505050565b60006135e2828b6131f3565b91506135ee828a6131db565b6002820191506135fe82896131f3565b915061360a82886131db565b60028201915061361a82876131f3565b915061362682866131db565b60028201915061363682856131f3565b915061364282846131ca565b5060010198975050505050505050565b602081016106c2828461306f565b6060810161366e828661306f565b61367b6020830185613517565b611fe96040830184613517565b602080825281016107d88184613173565b608080825281016136aa8187613173565b905081810360208301526136be818661307e565b905081810360408301526136d281856130d7565b905081810360608301526127718184613125565b602081016106c282846131c1565b602081016106c28284613222565b602081016106c2828461322b565b602080825281016107d88184613234565b602080825281016106c28161326c565b602080825281016106c2816132a5565b602081016106c28284613304565b606081016106c28284613315565b61018081016106c2828461334c565b610220810161377b828761334c565b613789610180830186613315565b6137976101e0830185613304565b6112e2610200830184613304565b604081016106c282846133fb565b60c081016106c2828461341f565b608081016106c2828461348f565b604081016106c282846134d9565b604081016137eb8285613304565b6107d86020830184613304565b604081016106c282846134ea565b602081016106c28284613517565b60405181810167ffffffffffffffff8111828210171561383357600080fd5b604052919050565b60200190565b5190565b90815260200190565b60006106c2826138ca565b151590565b7fff000000000000000000000000000000000000000000000000000000000000001690565b7fffff0000000000000000000000000000000000000000000000000000000000001690565b90565b806106ab81613974565b6fffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1690565b63ffffffff1690565b67ffffffffffffffff1690565b6bffffffffffffffffffffffff1690565b60006106c28261384e565b60006106c2826138ab565b60005b8381101561393b578181015183820152602001613923565b838111156120e55750506000910152565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01690565b6003811061103857fe5b6139878161384e565b811461103857600080fd5b613987816138a856fea365627a7a723158203dfb57be1bc5d782cf5c2aae5950f71accf993ed68cc69ff868793bd475dcb026c6578706572696d656e74616cf564736f6c63430005100040",
|
|
1415
|
+
"metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"number\",\"type\":\"uint256\"}],\"internalType\":\"struct Account.Info\",\"name\":\"account\",\"type\":\"tuple\"}],\"name\":\"getAccountBalances\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"},{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"},{\"components\":[{\"internalType\":\"bool\",\"name\":\"sign\",\"type\":\"bool\"},{\"internalType\":\"uint128\",\"name\":\"value\",\"type\":\"uint128\"}],\"internalType\":\"struct Types.Par[]\",\"name\":\"\",\"type\":\"tuple[]\"},{\"components\":[{\"internalType\":\"bool\",\"name\":\"sign\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Types.Wei[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"number\",\"type\":\"uint256\"}],\"internalType\":\"struct Account.Info\",\"name\":\"account\",\"type\":\"tuple\"}],\"name\":\"getAccountMarketsWithNonZeroBalances\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"number\",\"type\":\"uint256\"}],\"internalType\":\"struct Account.Info\",\"name\":\"account\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getAccountPar\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"sign\",\"type\":\"bool\"},{\"internalType\":\"uint128\",\"name\":\"value\",\"type\":\"uint128\"}],\"internalType\":\"struct Types.Par\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"number\",\"type\":\"uint256\"}],\"internalType\":\"struct Account.Info\",\"name\":\"account\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getAccountParNoMarketCheck\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"sign\",\"type\":\"bool\"},{\"internalType\":\"uint128\",\"name\":\"value\",\"type\":\"uint128\"}],\"internalType\":\"struct Types.Par\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"number\",\"type\":\"uint256\"}],\"internalType\":\"struct Account.Info\",\"name\":\"account\",\"type\":\"tuple\"}],\"name\":\"getAccountStatus\",\"outputs\":[{\"internalType\":\"enum Account.Status\",\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"number\",\"type\":\"uint256\"}],\"internalType\":\"struct Account.Info\",\"name\":\"account\",\"type\":\"tuple\"}],\"name\":\"getAccountValues\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Monetary.Value\",\"name\":\"\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Monetary.Value\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"number\",\"type\":\"uint256\"}],\"internalType\":\"struct Account.Info\",\"name\":\"account\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getAccountWei\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"sign\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Types.Wei\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"number\",\"type\":\"uint256\"}],\"internalType\":\"struct Account.Info\",\"name\":\"account\",\"type\":\"tuple\"}],\"name\":\"getAdjustedAccountValues\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Monetary.Value\",\"name\":\"\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Monetary.Value\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getEarningsRate\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"autoTrader\",\"type\":\"address\"}],\"name\":\"getIsAutoTraderSpecial\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"getIsGlobalOperator\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"getIsLocalOperator\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getLiquidationSpread\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"heldMarketId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"owedMarketId\",\"type\":\"uint256\"}],\"name\":\"getLiquidationSpreadForPair\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getMarginRatio\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarket\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"isClosing\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"isRecyclable\",\"type\":\"bool\"},{\"components\":[{\"internalType\":\"uint128\",\"name\":\"borrow\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"supply\",\"type\":\"uint128\"}],\"internalType\":\"struct Types.TotalPar\",\"name\":\"totalPar\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint96\",\"name\":\"borrow\",\"type\":\"uint96\"},{\"internalType\":\"uint96\",\"name\":\"supply\",\"type\":\"uint96\"},{\"internalType\":\"uint32\",\"name\":\"lastUpdate\",\"type\":\"uint32\"}],\"internalType\":\"struct Interest.Index\",\"name\":\"index\",\"type\":\"tuple\"},{\"internalType\":\"contract IPriceOracle\",\"name\":\"priceOracle\",\"type\":\"address\"},{\"internalType\":\"contract IInterestSetter\",\"name\":\"interestSetter\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"marginPremium\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"spreadPremium\",\"type\":\"tuple\"}],\"internalType\":\"struct Storage.Market\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketCachedIndex\",\"outputs\":[{\"components\":[{\"internalType\":\"uint96\",\"name\":\"borrow\",\"type\":\"uint96\"},{\"internalType\":\"uint96\",\"name\":\"supply\",\"type\":\"uint96\"},{\"internalType\":\"uint32\",\"name\":\"lastUpdate\",\"type\":\"uint32\"}],\"internalType\":\"struct Interest.Index\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketCurrentIndex\",\"outputs\":[{\"components\":[{\"internalType\":\"uint96\",\"name\":\"borrow\",\"type\":\"uint96\"},{\"internalType\":\"uint96\",\"name\":\"supply\",\"type\":\"uint96\"},{\"internalType\":\"uint32\",\"name\":\"lastUpdate\",\"type\":\"uint32\"}],\"internalType\":\"struct Interest.Index\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"getMarketIdByTokenAddress\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketInterestRate\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Interest.Rate\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketInterestSetter\",\"outputs\":[{\"internalType\":\"contract IInterestSetter\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketIsClosing\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketIsRecyclable\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketMarginPremium\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketPrice\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Monetary.Price\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketPriceOracle\",\"outputs\":[{\"internalType\":\"contract IPriceOracle\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketSpreadPremium\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketTokenAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketTotalPar\",\"outputs\":[{\"components\":[{\"internalType\":\"uint128\",\"name\":\"borrow\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"supply\",\"type\":\"uint128\"}],\"internalType\":\"struct Types.TotalPar\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getMarketWithInfo\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"isClosing\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"isRecyclable\",\"type\":\"bool\"},{\"components\":[{\"internalType\":\"uint128\",\"name\":\"borrow\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"supply\",\"type\":\"uint128\"}],\"internalType\":\"struct Types.TotalPar\",\"name\":\"totalPar\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint96\",\"name\":\"borrow\",\"type\":\"uint96\"},{\"internalType\":\"uint96\",\"name\":\"supply\",\"type\":\"uint96\"},{\"internalType\":\"uint32\",\"name\":\"lastUpdate\",\"type\":\"uint32\"}],\"internalType\":\"struct Interest.Index\",\"name\":\"index\",\"type\":\"tuple\"},{\"internalType\":\"contract IPriceOracle\",\"name\":\"priceOracle\",\"type\":\"address\"},{\"internalType\":\"contract IInterestSetter\",\"name\":\"interestSetter\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"marginPremium\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"spreadPremium\",\"type\":\"tuple\"}],\"internalType\":\"struct Storage.Market\",\"name\":\"\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint96\",\"name\":\"borrow\",\"type\":\"uint96\"},{\"internalType\":\"uint96\",\"name\":\"supply\",\"type\":\"uint96\"},{\"internalType\":\"uint32\",\"name\":\"lastUpdate\",\"type\":\"uint32\"}],\"internalType\":\"struct Interest.Index\",\"name\":\"\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Monetary.Price\",\"name\":\"\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Interest.Rate\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getMinBorrowedValue\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Monetary.Value\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"marketId\",\"type\":\"uint256\"}],\"name\":\"getNumExcessTokens\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"sign\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Types.Wei\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getNumMarkets\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"number\",\"type\":\"uint256\"}],\"internalType\":\"struct Account.Info\",\"name\":\"account\",\"type\":\"tuple\"}],\"name\":\"getNumberOfMarketsWithBorrow\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"n\",\"type\":\"uint256\"}],\"name\":\"getRecyclableMarkets\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getRiskLimits\",\"outputs\":[{\"components\":[{\"internalType\":\"uint64\",\"name\":\"marginRatioMax\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"liquidationSpreadMax\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"earningsRateMax\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"marginPremiumMax\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"spreadPremiumMax\",\"type\":\"uint64\"},{\"internalType\":\"uint128\",\"name\":\"minBorrowedValueMax\",\"type\":\"uint128\"}],\"internalType\":\"struct Storage.RiskLimits\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getRiskParams\",\"outputs\":[{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"marginRatio\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"liquidationSpread\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Decimal.D256\",\"name\":\"earningsRate\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"internalType\":\"struct Monetary.Value\",\"name\":\"minBorrowedValue\",\"type\":\"tuple\"}],\"internalType\":\"struct Storage.RiskParams\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"dYdX * Public read-only functions that allow transparency into the state of DolomiteMargin\",\"methods\":{},\"title\":\"Getters\"},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/Getters.sol\":\"Getters\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/Getters.sol\":{\"keccak256\":\"0xfbaf01df86497dbfdfc6faeca28219aeab710c4df95f46f7d042568479e234ab\",\"urls\":[\"bzz-raw://376e23ff206d0d86a37f413e8b90e60cf1a11d64ca84bd2bf02049c326f50402\",\"dweb:/ipfs/QmaGK3dsRM6oTZqwezLDgva8qxLyuJsbbNCwVWn3QdBvdz\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/State.sol\":{\"keccak256\":\"0x4fe464f16c7f490dbe7f43e9672ddf1296852a4a652303a47a91bc7a3c72419b\",\"urls\":[\"bzz-raw://725237be55e03e728e268407c47704af1c93b1fddf277b5e6447d864b9f0bbfb\",\"dweb:/ipfs/QmNZfmH9XMXGdd21DMv2aNU4X152uDVUrpns64kZn1ryVn\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/interfaces/IERC20Detailed.sol\":{\"keccak256\":\"0x22a62e2a8155e70300773721902f4b9118e17aa0bb5d9d1b046050a014cfb223\",\"urls\":[\"bzz-raw://03af737a33c552fbe58f6f1fbd5496854fdc28dd57be4365d56663725c083a18\",\"dweb:/ipfs/QmbgLqGAQEd6tXsZB8QaPNCAMiU6nNzP75wNbKdS65BuUF\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/interfaces/IInterestSetter.sol\":{\"keccak256\":\"0x546825f65490a30e29d0f6446acec49c1e895ce6b33d48ca5c05092725a63a57\",\"urls\":[\"bzz-raw://6ad3013aed985bdf6e6234ae0f7f37e6bba76c3470c33bfa24678cf19b3b412c\",\"dweb:/ipfs/QmfYaSBzxGpgiHoR7ontMJY66S5L26XwkLYoEuzsEjpbQH\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/interfaces/IPriceOracle.sol\":{\"keccak256\":\"0x3f7c3d1397390ea44c6d5e5730d49476431c3df3b28334fe38218de5edc31138\",\"urls\":[\"bzz-raw://63ebf926fca9ce33aaabaf93805686acc25daded1648d6dab59c8c4d05116918\",\"dweb:/ipfs/QmeGkDp7ycYstpfqCYBiqoCYwy876gabx8r42o5koj3H5A\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Account.sol\":{\"keccak256\":\"0x0ab9a3fabc89984dff748af63d4319ee134051de2d7fc560e34ebaac86198396\",\"urls\":[\"bzz-raw://ab67f499a8ef83dc7e7cf7176a0f66eced40fa228eda8dd2d47e066ab985cf42\",\"dweb:/ipfs/QmXRHbsEYxr2Qsfsj5psXGV5LaPZHuzLiEXzSQJ77WSE27\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Bits.sol\":{\"keccak256\":\"0x425bf5764368faca16cc30a64b79d9bbe01fd8150444b58a464971c32450bd85\",\"urls\":[\"bzz-raw://064baf3155da634c5c80cea70bba0dda7a33af934b34f75f596961b4ab9aeafe\",\"dweb:/ipfs/QmTUHXoi9L6CkERyfhFs1jhxU66u2sbc6XRR5cH4TeHEqL\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Cache.sol\":{\"keccak256\":\"0x1e6ff383f285e311d07374edda353e14ac4f29201726b0062a2f046c1a2b482c\",\"urls\":[\"bzz-raw://fd11c5db01039bf2c95f3561b08d271b80b7b1cb9fd7f75da887f7609807c5a7\",\"dweb:/ipfs/QmcY6CugdEHaYUa8ZKSnUDhvtVuoLfpDscZcmC91koAn1t\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Decimal.sol\":{\"keccak256\":\"0x66990bbe3c58d0edf57d3f67ab5280e2a53958ce44f75c335c4c50542321bccb\",\"urls\":[\"bzz-raw://724cfdb5c99121aab5262679e46766a2883e344749870d7dbfa92d1617f68bf2\",\"dweb:/ipfs/QmYjAsS45f6UG2u3zuTks2HVfMYtyFCVMgUvD7Gt7XtU3R\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/EnumerableSet.sol\":{\"keccak256\":\"0x9710b0ab43cc2d964d8722a0aabbedbf7e9d4756dcc0b4ab7c46c1ee68653042\",\"urls\":[\"bzz-raw://2405593d37f0f224bfca556f01634a9755bb0ed626f74dd15293106a8b4dd7d3\",\"dweb:/ipfs/QmTZ16S336jsoDnK5p3vAZRzimBkmdEJibncHVBJxBt469\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Interest.sol\":{\"keccak256\":\"0x73e75454568c5dfc3bdcf7dbf2ddce6ab8d3d317618bc1f1957f7667e15d3799\",\"urls\":[\"bzz-raw://7b1c8a9a79c8ffdbb0fa633f713ae3dfeac93b31d2b1639614ac32d473fb8250\",\"dweb:/ipfs/QmfARP93W2mgeVwD9Lkd3yVmbCLF2Mos7o8HJ1x6WYQmxZ\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Math.sol\":{\"keccak256\":\"0x0c0c913b6ccdb69063f9ec84879fcad20a1ee6f44402c9f5ec2b4f5b9f2fa16b\",\"urls\":[\"bzz-raw://89b32eefb57e5e63ad8c6e079ae7bf2d2c8622776cd45af0cf304e1cafd6e078\",\"dweb:/ipfs/Qmcj7yRnYuTgKC3ZqZqe8rynHGYVDS3UrFExcVGcqeaDHY\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Monetary.sol\":{\"keccak256\":\"0x5257274f2d4d3605f3e97ec45fb902111fe9a22506f0b4cf308ea933bc81bfe2\",\"urls\":[\"bzz-raw://85b8023b78805063a2ec8d376f1f5983994eabd96efd8ceadb0224dbb71c5678\",\"dweb:/ipfs/QmaDhzCzRqsuHuJfhToEC4pATQHwhh7yWWsjwfuRzFT1kG\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Require.sol\":{\"keccak256\":\"0xe641662503ea29ca959e84674188c3e9deaaf64c5623fb9560a4301c521ca1d3\",\"urls\":[\"bzz-raw://b10a04c7d014b99eb792c8c774e203c846d070b30cf0b715325fc07838ed6a6d\",\"dweb:/ipfs/QmUqZWnbchfEY9jM647yQamHe4GzspfUeRQF9k2nn1Hixd\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Storage.sol\":{\"keccak256\":\"0xf930fbde3ab43ec8f079dbad062453b502542f53b7eec670c8e86c7a2e47dd9a\",\"urls\":[\"bzz-raw://e1c402fc55471e8372be478e99f91c28373f096e31f0ef1d5072dfdb81541c29\",\"dweb:/ipfs/QmTc8WSfFCbxNQqNpq1vptUVFxteKQ8HWEhyXREyPZ2neu\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Time.sol\":{\"keccak256\":\"0x233d6ebf965711bf980f4bb2e672fb1a11b4b879fd41c884b3c2b704417d0d0c\",\"urls\":[\"bzz-raw://6478ff81706d531f9438b96274a7b904abbbd9c631540c68c6a89c3accf27abf\",\"dweb:/ipfs/QmWe9vkz3qwVjrcbmcTL8wgkjLPsrEqxcqPJL9ujM8PPbp\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Token.sol\":{\"keccak256\":\"0xd7bcae9e3c570544fc946a00cc7695106a64c20bc130d0183612c0410a531d19\",\"urls\":[\"bzz-raw://0ff5ffd6abb9ed223a64128c131afd962bec07fb9867cb62593906b339c76920\",\"dweb:/ipfs/QmbTrJL4bekvBqqaw6wXnBhYzS9uAqULSWF2VzW4cdfsM5\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Types.sol\":{\"keccak256\":\"0xab134538648a2e223a7fe61db03c14f687657a5d37147f93c9088f11735aa311\",\"urls\":[\"bzz-raw://79dc7d2b30576d2349b99267642ac8d5fb7939c920b8d8045379d3614238bdc3\",\"dweb:/ipfs/QmaQJYg1nirHoWSC6G38Cjsk9pZBzEaNrGXKqTsvAzbyES\"]},\"@openzeppelin/contracts/math/SafeMath.sol\":{\"keccak256\":\"0x640b6dee7a4b830bdfd52b5031a07fc2b12209f5b2e29e5d364a7d37f69d8076\",\"urls\":[\"bzz-raw://31113152e1ddb78fe7a4197f247591ca894e93f916867beb708d8e747b6cc74f\",\"dweb:/ipfs/QmbZaJyXdpsYGykVhHH9qpVGQg9DGCxE2QufbCUy3daTgq\"]},\"@openzeppelin/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0xe5bb0f57cff3e299f360052ba50f1ea0fff046df2be070b6943e0e3c3fdad8a9\",\"urls\":[\"bzz-raw://59fd025151435da35faa8093a5c7a17de02de9d08ad27275c5cdf05050820d91\",\"dweb:/ipfs/QmQMvwEcPhoRXzbXyrdoeRtvLoifUW9Qh7Luho7bmUPRkc\"]}},\"version\":1}",
|
|
1416
|
+
"bytecode": "0x6080604052664765747465727360c81b600e5534801561001e57600080fd5b506139de8061002e6000396000f3fe608060405234801561001057600080fd5b50600436106102775760003560e01c80638928378e11610160578063d5ecf7c5116100d8578063eb44fdd31161008c578063f941605211610071578063f9416052146105a2578063fd04b606146105b5578063fd47eda6146105c857610277565b8063eb44fdd31461056f578063f1061ba81461058f57610277565b8063e51bfcb4116100bd578063e51bfcb414610532578063e552022814610552578063eb1c6e6b1461055a57610277565b8063d5ecf7c51461050c578063deec053d1461051f57610277565b8063c14609421161012f578063c8e1882611610114578063c8e18826146104c6578063cb04a34c146104d9578063d24c48bc146104f957610277565b8063c14609421461049e578063c190c2ec146104a657610277565b80638928378e146104425780638fae3be11461045557806398d4611b14610468578063b548b8921461047b57610277565b80633a031bf0116101f35780635735a430116101c257806369794795116101a757806369794795146104025780636a8194e7146104175780637e9eaf411461043a57610277565b80635735a430146103dc5780635ac7d17c146103ef57610277565b80633a031bf01461038157806347d1b53c146103945780634f3c1542146103b457806356ea84b2146103bc57610277565b8063133683641161024a5780631a7777bb1161022f5780631a7777bb14610339578063295c39a51461035957806334fd45f11461036e57610277565b80631336836414610306578063197f0f051461032657610277565b80630339a0c41461027c578063052f72d7146102a5578063062bd3e9146102c5578063124f914c146102e5575b600080fd5b61028f61028a366004612fc3565b6105db565b60405161029c9190613688565b60405180910390f35b6102b86102b3366004612eff565b6106b0565b60405161029c91906136e6565b6102d86102d3366004612fc3565b6106c8565b60405161029c9190613652565b6102f86102f3366004612f57565b6106e4565b60405161029c9291906137dd565b610319610314366004612fc3565b610708565b60405161029c91906136f4565b610319610334366004612fc3565b61073f565b61034c610347366004612fc3565b610776565b60405161029c9190613741565b6103616107ad565b60405161029c9190613806565b61036161037c366004612f57565b6107b3565b6102b861038f366004612f1d565b6107c5565b6103a76103a2366004612f75565b6107df565b60405161029c91906137a5565b61034c610802565b6103cf6103ca366004612fc3565b61081e565b60405161029c919061374f565b6102b86103ea366004612fc3565b610853565b6102b86103fd366004612fc3565b61088d565b61040a6108c6565b60405161029c91906137c1565b61042a610425366004612f57565b610922565b60405161029c9493929190613699565b61034c610ad9565b61034c610450366004612fc3565b610af5565b610361610463366004612eff565b610b2a565b61028f610476366004612f57565b610b5e565b61048e610489366004612fc3565b610b71565b60405161029c949392919061376c565b61034c610bcd565b6104b96104b4366004612f75565b610be9565b60405161029c91906137f8565b6103a76104d4366004612f75565b610c29565b6104ec6104e7366004612fc3565b610c31565b60405161029c91906137cf565b61034c610507366004612fff565b610c53565b6104b961051a366004612fc3565b610c7f565b6103cf61052d366004612fc3565b610ca1565b610545610540366004612f57565b610cc3565b60405161029c9190613702565b61034c610cd5565b610562610cf1565b60405161029c91906137b3565b61058261057d366004612fc3565b610d93565b60405161029c919061375d565b6102b861059d366004612eff565b610f0f565b6102f86105b0366004612f57565b610f21565b61034c6105c3366004612fc3565b610f3c565b61034c6105d6366004612fc3565b610f73565b6060600080905060608360405190808252806020026020018201604052801561060e578160200160208202803883390190505b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60005260036020527fb1ee3b3d0d99532dd9f14b22c0b908d4eec0e052c3827bbed2d6c3986954d08c549091505b801580159061066c57508483105b156106a6578082848060010195508151811061068457fe5b602090810291909101810191909152600091825260039052604090205461065e565b509150505b919050565b60006106c2818363ffffffff610fa816565b92915050565b60006106d382610fd7565b6106c260008363ffffffff61103b16565b6106ec612cda565b6106f4612cda565b6106ff836000611067565b91509150915091565b600061071382610fd7565b5060009081526001602052604090206003015473ffffffffffffffffffffffffffffffffffffffff1690565b600061074a82610fd7565b5060009081526001602052604090206004015473ffffffffffffffffffffffffffffffffffffffff1690565b61077e612cda565b61078782610fd7565b506000908152600160209081526040918290208251918201909252600690910154815290565b60005490565b60006106c2818363ffffffff61110c16565b60006107d881848463ffffffff61115316565b9392505050565b6107e7612ced565b6107f082610fd7565b6107d86000848463ffffffff61119016565b61080a612cda565b506040805160208101909152600854815290565b610826612d04565b61082f82610fd7565b6106c28261084460008263ffffffff61120f16565b6000919063ffffffff61129316565b600061085e82610fd7565b506000908152600160205260409020547501000000000000000000000000000000000000000000900460ff1690565b600061089882610fd7565b5060009081526001602052604090205474010000000000000000000000000000000000000000900460ff1690565b6108ce612d24565b506040805160a08101825260085460808201908152815281516020818101845260095482528083019190915282518082018452600a548152828401528251908101909252600b548252606081019190915290565b60608080808061093960008763ffffffff6112eb16565b905060608151604051908082528060200260200182016040528015610968578160200160208202803883390190505b509050606082516040519080825280602002602001820160405280156109a857816020015b610995612ced565b81526020019060019003908161098d5790505b509050606083516040519080825280602002602001820160405280156109e857816020015b6109d5612ced565b8152602001906001900390816109cd5790505b50905060005b8451811015610ac957610a13858281518110610a0657fe5b60200260200101516106c8565b848281518110610a1f57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050610a768a868381518110610a6957fe5b60200260200101516107df565b838281518110610a8257fe5b6020026020010181905250610aaa8a868381518110610a9d57fe5b6020026020010151610be9565b828281518110610ab657fe5b60209081029190910101526001016109ee565b5092989197509550909350915050565b610ae1612cda565b506040805160208101909152600b54815290565b610afd612cda565b610b0682610fd7565b6106c282610b1b60008263ffffffff61103b16565b6000919063ffffffff61133016565b6000610b358261145f565b5073ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b60606106c260008363ffffffff6112eb16565b610b79612d63565b610b81612d04565b610b89612cda565b610b91612cda565b610b9a85610fd7565b610ba385610d93565b610bac8661081e565b610bb587610af5565b610bbe88610f73565b93509350935093509193509193565b610bd5612cda565b506040805160208101909152600954815290565b610bf1612ced565b610bfa82610fd7565b6107d8610c0f6000858563ffffffff61119016565b610c248461084460008263ffffffff61120f16565b6114c8565b6107f0612ced565b610c39612ced565b610c4282610fd7565b6106c260008363ffffffff61157916565b610c5b612cda565b610c6483610fd7565b610c6d82610fd7565b6107d86000848463ffffffff6115d916565b610c87612ced565b610c9082610fd7565b6106c260008363ffffffff61167016565b610ca9612d04565b610cb282610fd7565b6106c260008363ffffffff61120f16565b60006106c2818363ffffffff6117cb16565b610cdd612cda565b506040805160208101909152600a54815290565b610cf9612db5565b506040805160c081018252600c5467ffffffffffffffff808216835268010000000000000000808304821660208501527001000000000000000000000000000000008304821694840194909452780100000000000000000000000000000000000000000000000090910481166060830152600d549081166080830152919091046fffffffffffffffffffffffffffffffff1660a082015290565b610d9b612d63565b610da482610fd7565b50600090815260016020818152604092839020835161012081018552815473ffffffffffffffffffffffffffffffffffffffff808216835274010000000000000000000000000000000000000000820460ff908116151584870152750100000000000000000000000000000000000000000090920490911615158287015285518087018752948301546fffffffffffffffffffffffffffffffff808216875270010000000000000000000000000000000090910416858501526060808301959095528551948501865260028301546bffffffffffffffffffffffff80821687526c01000000000000000000000000820416868601527801000000000000000000000000000000000000000000000000900463ffffffff168587015260808201949094526003820154841660a0820152600482015490931660c0840152835180830185526005820154815260e08401528351918201909352600690920154825261010081019190915290565b60006106c2818363ffffffff61180a16565b610f29612cda565b610f31612cda565b6106ff836001611067565b610f44612cda565b610f4d82610fd7565b506000908152600160209081526040918290208251918201909252600590910154815290565b610f7b612cda565b610f8482610fd7565b6106c282610f9960008263ffffffff61120f16565b6000919063ffffffff61183916565b73ffffffffffffffffffffffffffffffffffffffff166000908152600691909101602052604090205460ff1690565b600054611038908210801561100f575060008281526001602052604090205473ffffffffffffffffffffffffffffffffffffffff1615155b600e547f496e76616c6964206d61726b6574000000000000000000000000000000000000611944565b50565b6000908152600191909101602052604090205473ffffffffffffffffffffffffffffffffffffffff1690565b61106f612cda565b611077612cda565b606061108a60008663ffffffff6112eb16565b9050611094612dea565b61109e82516119fa565b905060005b82518110156110da576110d28382815181106110bb57fe5b602002602001015183611a5990919063ffffffff16565b6001016110a3565b506110ec60008263ffffffff611ac316565b6110ff600087838863ffffffff611d2316565b9350935050509250929050565b805173ffffffffffffffffffffffffffffffffffffffff16600090815260049290920160209081526040808420928201518452919052902054610100900463ffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff9182166000908152600593909301602090815260408085209290931684525290205460ff1690565b611198612ced565b50815173ffffffffffffffffffffffffffffffffffffffff1660009081526004840160209081526040808320828601518452825280832084845260030182529182902082518084019093525460ff8116151583526fffffffffffffffffffffffffffffffff61010090910416908201529392505050565b611217612d04565b506000908152600191909101602090815260409182902082516060810184526002909101546bffffffffffffffffffffffff80821683526c0100000000000000000000000082041692820192909252780100000000000000000000000000000000000000000000000090910463ffffffff169181019190915290565b61129b612d04565b6112a3612cda565b6112b485858563ffffffff61183916565b90506112e283826112cb888863ffffffff61157916565b6040805160208101909152600a8a01548152611e86565b95945050505050565b805173ffffffffffffffffffffffffffffffffffffffff166000908152600483016020908152604080832082850151845290915290206060906107d890600101611ff1565b611338612cda565b600083815260018501602052604090206003015473ffffffffffffffffffffffffffffffffffffffff1661136a612cda565b6040517f41976e0900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8316906341976e09906113bc908790600401613652565b60206040518083038186803b1580156113d457600080fd5b505afa1580156113e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061140c9190810190612fa5565b80519091506112e29015157f53746f72616765000000000000000000000000000000000000000000000000007f50726963652063616e6e6f74206265207a65726f0000000000000000000000008861204d565b73ffffffffffffffffffffffffffffffffffffffff80821660008181526002602090815260408083205483526001909152902054600e546110389391909116909114907f496e76616c696420746f6b656e00000000000000000000000000000000000000611944565b6114d0612ced565b602083015183516fffffffffffffffffffffffffffffffff909116901561153c576040805180820190915260018152602084810151908201906115319084906bffffffffffffffffffffffff16670de0b6b3a764000063ffffffff6120eb16565b8152509150506106c2565b6040805180820190915260008152835160208201906115319084906bffffffffffffffffffffffff16670de0b6b3a764000063ffffffff6120eb16565b611581612ced565b506000818152600180840160209081526040928390208351808501909452909101546fffffffffffffffffffffffffffffffff8082168452700100000000000000000000000000000000909104169082015292915050565b6115e1612cda565b600984015460008481526001860160209081526040918290208251918201909252600690910154815261161e9082906116199061217f565b6121b6565b90506116598161161987600101600087815260200190815260200160002060060160405180602001604052908160008201548152505061217f565b604080516020810190915290815295945050505050565b611678612ced565b611680612d04565b611690848463ffffffff61120f16565b905061169a612ced565b6116aa858563ffffffff61157916565b905060006116be868663ffffffff61103b16565b90506116c8612ced565b6040805180820182526001815290517f70a08231000000000000000000000000000000000000000000000000000000008152602082019073ffffffffffffffffffffffffffffffffffffffff8516906370a082319061172b903090600401613652565b60206040518083038186803b15801561174357600080fd5b505afa158015611757573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061177b9190810190612fe1565b90529050611787612ced565b61178f612ced565b61179985876121cf565b90925090506117be826117b2858463ffffffff61227716565b9063ffffffff61227716565b9998505050505050505050565b805173ffffffffffffffffffffffffffffffffffffffff1660009081526004929092016020908152604080842092820151845291905290205460ff1690565b73ffffffffffffffffffffffffffffffffffffffff166000908152600791909101602052604090205460ff1690565b611841612cda565b611849612ced565b611859858563ffffffff61157916565b9050611863612ced565b61186b612ced565b61187583866121cf565b91509150611881612cda565b600087815260018901602052604090206004015473ffffffffffffffffffffffffffffffffffffffff1663e8177dcf6118c08a8a63ffffffff61103b16565b846020015186602001516040518463ffffffff1660e01b81526004016118e893929190613660565b60206040518083038186803b15801561190057600080fd5b505afa158015611914573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506119389190810190612fa5565b98975050505050505050565b826119f55761195282612291565b7f3a2000000000000000000000000000000000000000000000000000000000000061197c83612291565b60405160200161198e93929190613550565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152908290527f08c379a00000000000000000000000000000000000000000000000000000000082526119ec91600401613710565b60405180910390fd5b505050565b611a02612dea565b604080516000606082018181526080830190935290918291611a3a565b611a27612e0b565b815260200190600190039081611a1f5790505b508152602001611a4984612365565b8152600060209091015292915050565b815151611aa890157f43616368650000000000000000000000000000000000000000000000000000007f616c726561647920696e697469616c697a656400000000000000000000000000611944565b611ab682602001518261239f565b5060400180516001019052565b8060400151604051908082528060200260200182016040528015611b0157816020015b611aee612e0b565b815260200190600190039081611ae65790505b5081526000805b826020015151811015611cc957600083602001518281518110611b2757fe5b602002602001015190505b8015611cae576000611b43826123d5565b90506000611b5184836125ac565b90506000611b65888363ffffffff61103b16565b600083815260018a01602052604090205490915074010000000000000000000000000000000000000000900460ff1615611c2c576040805160a08101825283815273ffffffffffffffffffffffffffffffffffffffff8316602082015260019181019190915260608101611bdf8a8563ffffffff61157916565b516fffffffffffffffffffffffffffffffff168152602001611c088a858563ffffffff61133016565b9052875180516001890198908110611c1c57fe5b6020026020010181905250611c9a565b6040805160a08101825283815273ffffffffffffffffffffffffffffffffffffffff831660208201526000918101829052606081019190915260808101611c7a8a858563ffffffff61133016565b9052875180516001890198908110611c8e57fe5b60200260200101819052505b611ca484846125b7565b9350505050611b32565b8360400151831415611cc05750611cc9565b50600101611b08565b5060408201518251516119f591808414917f53746f7261676500000000000000000000000000000000000000000000000000917f636163686520696e697469616c697a656420696d70726f7065726c7900000000916125c0565b611d2b612cda565b611d33612cda565b611d3b612cda565b611d43612cda565b6000611d4e8761268b565b905060005b81811015611e7757611d63612ced565b611d868a611d778b8563ffffffff61269016565b518d919063ffffffff61270c16565b9050611d918161277b565b15611d9c5750611e6f565b6000611dc7611db18b8563ffffffff61269016565b608001515160208401519063ffffffff61278316565b9050611dd1612cda565b611dd96127d7565b90508915611e2457611e2160018e016000611dfa8e8863ffffffff61269016565b5181526020808201929092526040908101600020815192830190915260050154815261217f565b90505b825115611e4d57611e46611e3883836127f9565b88519063ffffffff61281216565b8752611e6b565b611e68611e5a83836121b6565b87519063ffffffff61281216565b86525b5050505b600101611d53565b50919890975095505050505050565b611e8e612d04565b611e96612ced565b611e9e612ced565b611ea885886121cf565b915091506000611eb6612851565b90506000611eee611ee08a6040015163ffffffff168463ffffffff1661286190919063ffffffff16565b89519063ffffffff61278316565b90506000611efb8561277b565b15611f0857506000611f3a565b611f1282886121b6565b9050846020015184602001511015611f3a57611f3781856020015187602001516128a3565b90505b81811115611f4457fe5b60408051606081019091528a518190611f8d90611f88906bffffffffffffffffffffffff16611f7c8188670de0b6b3a76400006128a3565b9063ffffffff61281216565b6128b9565b6bffffffffffffffffffffffff908116825260208d810151920191611fc491611f889116611f7c8187670de0b6b3a76400006128a3565b6bffffffffffffffffffffffff1681526020018463ffffffff16815250955050505050505b949350505050565b60608160000180548060200260200160405190810160405280929190818152602001828054801561204157602002820191906000526020600020905b81548152602001906001019080831161202d575b50505050509050919050565b836120e55761205b83612291565b7f3a2000000000000000000000000000000000000000000000000000000000000061208584612291565b7f203c0000000000000000000000000000000000000000000000000000000000006120af85612918565b60405161198e9594939291907f3e0000000000000000000000000000000000000000000000000000000000000090602001613578565b50505050565b60008315806120f8575082155b1561210f57612108600083612a27565b90506107d8565b6000612121858563ffffffff61278316565b90506112e261214c6001611f7c6002612140888463ffffffff61286116565b9063ffffffff612a2716565b61215c838663ffffffff612a6916565b101561216957600061216c565b60015b60ff16611f7c838663ffffffff612a2716565b612187612cda565b6040805160208101909152825181906121ae90670de0b6b3a764000063ffffffff61281216565b905292915050565b60006107d8838360000151670de0b6b3a76400006128a3565b6121d7612ced565b6121df612ced565b6121e7612ced565b5060408051808201909152600181526020858101516fffffffffffffffffffffffffffffffff169082015261221a612ced565b50604080518082019091526000815285516fffffffffffffffffffffffffffffffff16602082015261224a612ced565b61225483876114c8565b905061225e612ced565b61226883886114c8565b91989197509095505050505050565b61227f612ced565b6107d88361228c84612aab565b612ad2565b606080826040516020016122a5919061353b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152919052905060205b801561234e5781517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9091019082908290811061231157fe5b01602001517fff00000000000000000000000000000000000000000000000000000000000000161561234957600101815290506106ab565b6122d8565b505060408051600081526020810190915292915050565b60606001610100830401604051908082528060200260200182016040528015612398578160200160208202803883390190505b5092915050565b815161010082049060ff8316906001821b908590849081106123bd57fe5b60200260200101818151179150818152505050505050565b600060ff6fffffffffffffffffffffffffffffffff831615612418577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8001612420565b608083901c92505b67ffffffffffffffff831615612457577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00161245f565b604083901c92505b63ffffffff831615612492577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00161249a565b602083901c92505b61ffff8316156124cb577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016124d3565b601083901c92505b60ff831615612503577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80161250b565b600883901c92505b600f83161561253b577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc01612543565b600483901c92505b6003831615612573577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0161257b565b600283901c92505b60018316156106c2577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0192915050565b610100919091020190565b6001901b900390565b84612684576125ce84612291565b7f3a200000000000000000000000000000000000000000000000000000000000006125f885612291565b7f203c00000000000000000000000000000000000000000000000000000000000061262286612918565b7f2c2000000000000000000000000000000000000000000000000000000000000061264c87612918565b60405161198e97969594939291907f3e00000000000000000000000000000000000000000000000000000000000000906020016135d6565b5050505050565b515190565b612698612e0b565b8251516126ee90808410907f4361636865000000000000000000000000000000000000000000000000000000907f696e76616c696420696e646578000000000000000000000000000000000000009086906125c0565b82518051839081106126fc57fe5b6020026020010151905092915050565b612714612ced565b61271c612ced565b61272d85858563ffffffff61119016565b905061273881612b64565b1561274d57612745612b7e565b9150506107d8565b612755612d04565b612765868563ffffffff61120f16565b905061277182826114c8565b9695505050505050565b602001511590565b600082612792575060006106c2565b8282028284828161279f57fe5b04146107d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ec90613731565b6127df612cda565b506040805160208101909152670de0b6b3a7640000815290565b60006107d883670de0b6b3a764000084600001516128a3565b6000828201838110156107d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ec90613721565b600061285c42612b9e565b905090565b60006107d883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612bf5565b6000611fe982612140868663ffffffff61278316565b6000816106c26bffffffffffffffffffffffff821682147f4d617468000000000000000000000000000000000000000000000000000000007f556e73616665206361737420746f2075696e74393600000000000000000000008461204d565b606081612959575060408051808201909152600181527f300000000000000000000000000000000000000000000000000000000000000060208201526106ab565b8160005b811561297157600101600a8204915061295d565b6060816040519080825280601f01601f19166020018201604052801561299e576020820181803883390190505b508593509050815b8015612a1e577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01600a840660300160f81b8282815181106129e457fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a840493506129a6565b50949350505050565b60006107d883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612c3b565b60006107d883836040518060400160405280601881526020017f536166654d6174683a206d6f64756c6f206279207a65726f0000000000000000815250612c8c565b612ab3612ced565b5060408051808201909152815115815260208083015190820152919050565b612ada612ced565b612ae2612ced565b8251845115159015151415612b155783511515815260208085015190840151612b0b9190612812565b60208201526107d8565b8260200151846020015110612b3e5783511515815260208085015190840151612b0b9190612861565b82511515815260208084015190850151612b589190612861565b60208201529392505050565b602001516fffffffffffffffffffffffffffffffff161590565b612b86612ced565b50604080518082019091526000808252602082015290565b6000816106c263ffffffff821682147f4d617468000000000000000000000000000000000000000000000000000000007f556e73616665206361737420746f2075696e74333200000000000000000000008461204d565b60008184841115612c33576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ec9190613710565b505050900390565b60008183612c76576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ec9190613710565b506000838581612c8257fe5b0495945050505050565b60008183612cc7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ec9190613710565b50828481612cd157fe5b06949350505050565b6040518060200160405280600081525090565b604080518082019091526000808252602082015290565b604080516060810182526000808252602082018190529181019190915290565b6040518060800160405280612d37612cda565b8152602001612d44612cda565b8152602001612d51612cda565b8152602001612d5e612cda565b905290565b60408051610120810182526000808252602082018190529181019190915260608101612d8d612ced565b8152602001612d9a612d04565b81526000602082018190526040820152606001612d51612cda565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b60405180606001604052806060815260200160608152602001600081525090565b6040518060a0016040528060008152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160001515815260200160006fffffffffffffffffffffffffffffffff168152602001612d5e612cda565b80356106c28161397e565b600060408284031215612e8157600080fd5b612e8b6040613814565b90506000612e998484612e64565b8252506020612eaa84848301612ee9565b60208301525092915050565b600060208284031215612ec857600080fd5b612ed26020613814565b90506000612ee08484612ef4565b82525092915050565b80356106c281613992565b80516106c281613992565b600060208284031215612f1157600080fd5b6000611fe98484612e64565b60008060408385031215612f3057600080fd5b6000612f3c8585612e64565b9250506020612f4d85828601612e64565b9150509250929050565b600060408284031215612f6957600080fd5b6000611fe98484612e6f565b60008060608385031215612f8857600080fd5b6000612f948585612e6f565b9250506040612f4d85828601612ee9565b600060208284031215612fb757600080fd5b6000611fe98484612eb6565b600060208284031215612fd557600080fd5b6000611fe98484612ee9565b600060208284031215612ff357600080fd5b6000611fe98484612ef4565b6000806040838503121561301257600080fd5b600061301e8585612ee9565b9250506020612f4d85828601612ee9565b600061303b838361306f565b505060200190565b600061304f83836133fb565b505060400190565b600061304f83836134ea565b600061303b8383613517565b6130788161384e565b82525050565b600061308982613841565b6130938185613845565b935061309e8361383b565b8060005b838110156130cc5781516130b6888261302f565b97506130c18361383b565b9250506001016130a2565b509495945050505050565b60006130e282613841565b6130ec8185613845565b93506130f78361383b565b8060005b838110156130cc57815161310f8882613043565b975061311a8361383b565b9250506001016130fb565b600061313082613841565b61313a8185613845565b93506131458361383b565b8060005b838110156130cc57815161315d8882613057565b97506131688361383b565b925050600101613149565b600061317e82613841565b6131888185613845565b93506131938361383b565b8060005b838110156130cc5781516131ab8882613063565b97506131b68361383b565b925050600101613197565b61307881613859565b6130786131d68261385e565b6138a8565b6130786131d682613883565b6130786131d6826138a8565b60006131fe82613841565b61320881856106ab565b9350613218818560208601613920565b9290920192915050565b6130788161390a565b61307881613915565b600061323f82613841565b6132498185613845565b9350613259818560208601613920565b6132628161394c565b9093019392505050565b6000613279601b83613845565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000815260200192915050565b60006132b2602183613845565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f81527f7700000000000000000000000000000000000000000000000000000000000000602082015260400192915050565b805160208301906120e58482613517565b805160608301906133268482613532565b5060208201516133396020850182613532565b5060408201516120e56040850182613520565b805161018083019061335e848261306f565b50602082015161337160208501826131c1565b50604082015161338460408501826131c1565b50606082015161339760608501826134d9565b5060808201516133aa60a0850182613315565b5060a08201516133be610100850182613222565b5060c08201516133d2610120850182613222565b5060e08201516133e6610140850182613304565b506101008201516120e5610160850182613304565b8051604083019061340c84826131c1565b5060208201516120e5602085018261350e565b805160c08301906134308482613529565b5060208201516134436020850182613529565b5060408201516134566040850182613529565b5060608201516134696060850182613529565b50608082015161347c6080850182613529565b5060a08201516120e560a085018261350e565b805160808301906134a08482613304565b5060208201516134b36020850182613304565b5060408201516134c66040850182613304565b5060608201516120e56060850182613304565b8051604083019061340c848261350e565b805160408301906134fb84826131c1565b5060208201516120e56020850182613517565b613078816138b5565b613078816138a8565b613078816138e3565b613078816138ec565b613078816138f9565b600061354782846131e7565b50602001919050565b600061355c82866131f3565b915061356882856131db565b6002820191506112e282846131f3565b600061358482896131f3565b915061359082886131db565b6002820191506135a082876131f3565b91506135ac82866131db565b6002820191506135bc82856131f3565b91506135c882846131ca565b506001019695505050505050565b60006135e2828b6131f3565b91506135ee828a6131db565b6002820191506135fe82896131f3565b915061360a82886131db565b60028201915061361a82876131f3565b915061362682866131db565b60028201915061363682856131f3565b915061364282846131ca565b5060010198975050505050505050565b602081016106c2828461306f565b6060810161366e828661306f565b61367b6020830185613517565b611fe96040830184613517565b602080825281016107d88184613173565b608080825281016136aa8187613173565b905081810360208301526136be818661307e565b905081810360408301526136d281856130d7565b905081810360608301526127718184613125565b602081016106c282846131c1565b602081016106c28284613222565b602081016106c2828461322b565b602080825281016107d88184613234565b602080825281016106c28161326c565b602080825281016106c2816132a5565b602081016106c28284613304565b606081016106c28284613315565b61018081016106c2828461334c565b610220810161377b828761334c565b613789610180830186613315565b6137976101e0830185613304565b6112e2610200830184613304565b604081016106c282846133fb565b60c081016106c2828461341f565b608081016106c2828461348f565b604081016106c282846134d9565b604081016137eb8285613304565b6107d86020830184613304565b604081016106c282846134ea565b602081016106c28284613517565b60405181810167ffffffffffffffff8111828210171561383357600080fd5b604052919050565b60200190565b5190565b90815260200190565b60006106c2826138ca565b151590565b7fff000000000000000000000000000000000000000000000000000000000000001690565b7fffff0000000000000000000000000000000000000000000000000000000000001690565b90565b806106ab81613974565b6fffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1690565b63ffffffff1690565b67ffffffffffffffff1690565b6bffffffffffffffffffffffff1690565b60006106c28261384e565b60006106c2826138ab565b60005b8381101561393b578181015183820152602001613923565b838111156120e55750506000910152565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01690565b6003811061103857fe5b6139878161384e565b811461103857600080fd5b613987816138a856fea365627a7a72315820b8484af71410c324f1dda1d1ae3e5b9ce63bf7af2006d6f079805370e493c03e6c6578706572696d656e74616cf564736f6c63430005100040",
|
|
1417
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106102775760003560e01c80638928378e11610160578063d5ecf7c5116100d8578063eb44fdd31161008c578063f941605211610071578063f9416052146105a2578063fd04b606146105b5578063fd47eda6146105c857610277565b8063eb44fdd31461056f578063f1061ba81461058f57610277565b8063e51bfcb4116100bd578063e51bfcb414610532578063e552022814610552578063eb1c6e6b1461055a57610277565b8063d5ecf7c51461050c578063deec053d1461051f57610277565b8063c14609421161012f578063c8e1882611610114578063c8e18826146104c6578063cb04a34c146104d9578063d24c48bc146104f957610277565b8063c14609421461049e578063c190c2ec146104a657610277565b80638928378e146104425780638fae3be11461045557806398d4611b14610468578063b548b8921461047b57610277565b80633a031bf0116101f35780635735a430116101c257806369794795116101a757806369794795146104025780636a8194e7146104175780637e9eaf411461043a57610277565b80635735a430146103dc5780635ac7d17c146103ef57610277565b80633a031bf01461038157806347d1b53c146103945780634f3c1542146103b457806356ea84b2146103bc57610277565b8063133683641161024a5780631a7777bb1161022f5780631a7777bb14610339578063295c39a51461035957806334fd45f11461036e57610277565b80631336836414610306578063197f0f051461032657610277565b80630339a0c41461027c578063052f72d7146102a5578063062bd3e9146102c5578063124f914c146102e5575b600080fd5b61028f61028a366004612fc3565b6105db565b60405161029c9190613688565b60405180910390f35b6102b86102b3366004612eff565b6106b0565b60405161029c91906136e6565b6102d86102d3366004612fc3565b6106c8565b60405161029c9190613652565b6102f86102f3366004612f57565b6106e4565b60405161029c9291906137dd565b610319610314366004612fc3565b610708565b60405161029c91906136f4565b610319610334366004612fc3565b61073f565b61034c610347366004612fc3565b610776565b60405161029c9190613741565b6103616107ad565b60405161029c9190613806565b61036161037c366004612f57565b6107b3565b6102b861038f366004612f1d565b6107c5565b6103a76103a2366004612f75565b6107df565b60405161029c91906137a5565b61034c610802565b6103cf6103ca366004612fc3565b61081e565b60405161029c919061374f565b6102b86103ea366004612fc3565b610853565b6102b86103fd366004612fc3565b61088d565b61040a6108c6565b60405161029c91906137c1565b61042a610425366004612f57565b610922565b60405161029c9493929190613699565b61034c610ad9565b61034c610450366004612fc3565b610af5565b610361610463366004612eff565b610b2a565b61028f610476366004612f57565b610b5e565b61048e610489366004612fc3565b610b71565b60405161029c949392919061376c565b61034c610bcd565b6104b96104b4366004612f75565b610be9565b60405161029c91906137f8565b6103a76104d4366004612f75565b610c29565b6104ec6104e7366004612fc3565b610c31565b60405161029c91906137cf565b61034c610507366004612fff565b610c53565b6104b961051a366004612fc3565b610c7f565b6103cf61052d366004612fc3565b610ca1565b610545610540366004612f57565b610cc3565b60405161029c9190613702565b61034c610cd5565b610562610cf1565b60405161029c91906137b3565b61058261057d366004612fc3565b610d93565b60405161029c919061375d565b6102b861059d366004612eff565b610f0f565b6102f86105b0366004612f57565b610f21565b61034c6105c3366004612fc3565b610f3c565b61034c6105d6366004612fc3565b610f73565b6060600080905060608360405190808252806020026020018201604052801561060e578160200160208202803883390190505b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60005260036020527fb1ee3b3d0d99532dd9f14b22c0b908d4eec0e052c3827bbed2d6c3986954d08c549091505b801580159061066c57508483105b156106a6578082848060010195508151811061068457fe5b602090810291909101810191909152600091825260039052604090205461065e565b509150505b919050565b60006106c2818363ffffffff610fa816565b92915050565b60006106d382610fd7565b6106c260008363ffffffff61103b16565b6106ec612cda565b6106f4612cda565b6106ff836000611067565b91509150915091565b600061071382610fd7565b5060009081526001602052604090206003015473ffffffffffffffffffffffffffffffffffffffff1690565b600061074a82610fd7565b5060009081526001602052604090206004015473ffffffffffffffffffffffffffffffffffffffff1690565b61077e612cda565b61078782610fd7565b506000908152600160209081526040918290208251918201909252600690910154815290565b60005490565b60006106c2818363ffffffff61110c16565b60006107d881848463ffffffff61115316565b9392505050565b6107e7612ced565b6107f082610fd7565b6107d86000848463ffffffff61119016565b61080a612cda565b506040805160208101909152600854815290565b610826612d04565b61082f82610fd7565b6106c28261084460008263ffffffff61120f16565b6000919063ffffffff61129316565b600061085e82610fd7565b506000908152600160205260409020547501000000000000000000000000000000000000000000900460ff1690565b600061089882610fd7565b5060009081526001602052604090205474010000000000000000000000000000000000000000900460ff1690565b6108ce612d24565b506040805160a08101825260085460808201908152815281516020818101845260095482528083019190915282518082018452600a548152828401528251908101909252600b548252606081019190915290565b60608080808061093960008763ffffffff6112eb16565b905060608151604051908082528060200260200182016040528015610968578160200160208202803883390190505b509050606082516040519080825280602002602001820160405280156109a857816020015b610995612ced565b81526020019060019003908161098d5790505b509050606083516040519080825280602002602001820160405280156109e857816020015b6109d5612ced565b8152602001906001900390816109cd5790505b50905060005b8451811015610ac957610a13858281518110610a0657fe5b60200260200101516106c8565b848281518110610a1f57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050610a768a868381518110610a6957fe5b60200260200101516107df565b838281518110610a8257fe5b6020026020010181905250610aaa8a868381518110610a9d57fe5b6020026020010151610be9565b828281518110610ab657fe5b60209081029190910101526001016109ee565b5092989197509550909350915050565b610ae1612cda565b506040805160208101909152600b54815290565b610afd612cda565b610b0682610fd7565b6106c282610b1b60008263ffffffff61103b16565b6000919063ffffffff61133016565b6000610b358261145f565b5073ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b60606106c260008363ffffffff6112eb16565b610b79612d63565b610b81612d04565b610b89612cda565b610b91612cda565b610b9a85610fd7565b610ba385610d93565b610bac8661081e565b610bb587610af5565b610bbe88610f73565b93509350935093509193509193565b610bd5612cda565b506040805160208101909152600954815290565b610bf1612ced565b610bfa82610fd7565b6107d8610c0f6000858563ffffffff61119016565b610c248461084460008263ffffffff61120f16565b6114c8565b6107f0612ced565b610c39612ced565b610c4282610fd7565b6106c260008363ffffffff61157916565b610c5b612cda565b610c6483610fd7565b610c6d82610fd7565b6107d86000848463ffffffff6115d916565b610c87612ced565b610c9082610fd7565b6106c260008363ffffffff61167016565b610ca9612d04565b610cb282610fd7565b6106c260008363ffffffff61120f16565b60006106c2818363ffffffff6117cb16565b610cdd612cda565b506040805160208101909152600a54815290565b610cf9612db5565b506040805160c081018252600c5467ffffffffffffffff808216835268010000000000000000808304821660208501527001000000000000000000000000000000008304821694840194909452780100000000000000000000000000000000000000000000000090910481166060830152600d549081166080830152919091046fffffffffffffffffffffffffffffffff1660a082015290565b610d9b612d63565b610da482610fd7565b50600090815260016020818152604092839020835161012081018552815473ffffffffffffffffffffffffffffffffffffffff808216835274010000000000000000000000000000000000000000820460ff908116151584870152750100000000000000000000000000000000000000000090920490911615158287015285518087018752948301546fffffffffffffffffffffffffffffffff808216875270010000000000000000000000000000000090910416858501526060808301959095528551948501865260028301546bffffffffffffffffffffffff80821687526c01000000000000000000000000820416868601527801000000000000000000000000000000000000000000000000900463ffffffff168587015260808201949094526003820154841660a0820152600482015490931660c0840152835180830185526005820154815260e08401528351918201909352600690920154825261010081019190915290565b60006106c2818363ffffffff61180a16565b610f29612cda565b610f31612cda565b6106ff836001611067565b610f44612cda565b610f4d82610fd7565b506000908152600160209081526040918290208251918201909252600590910154815290565b610f7b612cda565b610f8482610fd7565b6106c282610f9960008263ffffffff61120f16565b6000919063ffffffff61183916565b73ffffffffffffffffffffffffffffffffffffffff166000908152600691909101602052604090205460ff1690565b600054611038908210801561100f575060008281526001602052604090205473ffffffffffffffffffffffffffffffffffffffff1615155b600e547f496e76616c6964206d61726b6574000000000000000000000000000000000000611944565b50565b6000908152600191909101602052604090205473ffffffffffffffffffffffffffffffffffffffff1690565b61106f612cda565b611077612cda565b606061108a60008663ffffffff6112eb16565b9050611094612dea565b61109e82516119fa565b905060005b82518110156110da576110d28382815181106110bb57fe5b602002602001015183611a5990919063ffffffff16565b6001016110a3565b506110ec60008263ffffffff611ac316565b6110ff600087838863ffffffff611d2316565b9350935050509250929050565b805173ffffffffffffffffffffffffffffffffffffffff16600090815260049290920160209081526040808420928201518452919052902054610100900463ffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff9182166000908152600593909301602090815260408085209290931684525290205460ff1690565b611198612ced565b50815173ffffffffffffffffffffffffffffffffffffffff1660009081526004840160209081526040808320828601518452825280832084845260030182529182902082518084019093525460ff8116151583526fffffffffffffffffffffffffffffffff61010090910416908201529392505050565b611217612d04565b506000908152600191909101602090815260409182902082516060810184526002909101546bffffffffffffffffffffffff80821683526c0100000000000000000000000082041692820192909252780100000000000000000000000000000000000000000000000090910463ffffffff169181019190915290565b61129b612d04565b6112a3612cda565b6112b485858563ffffffff61183916565b90506112e283826112cb888863ffffffff61157916565b6040805160208101909152600a8a01548152611e86565b95945050505050565b805173ffffffffffffffffffffffffffffffffffffffff166000908152600483016020908152604080832082850151845290915290206060906107d890600101611ff1565b611338612cda565b600083815260018501602052604090206003015473ffffffffffffffffffffffffffffffffffffffff1661136a612cda565b6040517f41976e0900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8316906341976e09906113bc908790600401613652565b60206040518083038186803b1580156113d457600080fd5b505afa1580156113e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061140c9190810190612fa5565b80519091506112e29015157f53746f72616765000000000000000000000000000000000000000000000000007f50726963652063616e6e6f74206265207a65726f0000000000000000000000008861204d565b73ffffffffffffffffffffffffffffffffffffffff80821660008181526002602090815260408083205483526001909152902054600e546110389391909116909114907f496e76616c696420746f6b656e00000000000000000000000000000000000000611944565b6114d0612ced565b602083015183516fffffffffffffffffffffffffffffffff909116901561153c576040805180820190915260018152602084810151908201906115319084906bffffffffffffffffffffffff16670de0b6b3a764000063ffffffff6120eb16565b8152509150506106c2565b6040805180820190915260008152835160208201906115319084906bffffffffffffffffffffffff16670de0b6b3a764000063ffffffff6120eb16565b611581612ced565b506000818152600180840160209081526040928390208351808501909452909101546fffffffffffffffffffffffffffffffff8082168452700100000000000000000000000000000000909104169082015292915050565b6115e1612cda565b600984015460008481526001860160209081526040918290208251918201909252600690910154815261161e9082906116199061217f565b6121b6565b90506116598161161987600101600087815260200190815260200160002060060160405180602001604052908160008201548152505061217f565b604080516020810190915290815295945050505050565b611678612ced565b611680612d04565b611690848463ffffffff61120f16565b905061169a612ced565b6116aa858563ffffffff61157916565b905060006116be868663ffffffff61103b16565b90506116c8612ced565b6040805180820182526001815290517f70a08231000000000000000000000000000000000000000000000000000000008152602082019073ffffffffffffffffffffffffffffffffffffffff8516906370a082319061172b903090600401613652565b60206040518083038186803b15801561174357600080fd5b505afa158015611757573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061177b9190810190612fe1565b90529050611787612ced565b61178f612ced565b61179985876121cf565b90925090506117be826117b2858463ffffffff61227716565b9063ffffffff61227716565b9998505050505050505050565b805173ffffffffffffffffffffffffffffffffffffffff1660009081526004929092016020908152604080842092820151845291905290205460ff1690565b73ffffffffffffffffffffffffffffffffffffffff166000908152600791909101602052604090205460ff1690565b611841612cda565b611849612ced565b611859858563ffffffff61157916565b9050611863612ced565b61186b612ced565b61187583866121cf565b91509150611881612cda565b600087815260018901602052604090206004015473ffffffffffffffffffffffffffffffffffffffff1663e8177dcf6118c08a8a63ffffffff61103b16565b846020015186602001516040518463ffffffff1660e01b81526004016118e893929190613660565b60206040518083038186803b15801561190057600080fd5b505afa158015611914573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506119389190810190612fa5565b98975050505050505050565b826119f55761195282612291565b7f3a2000000000000000000000000000000000000000000000000000000000000061197c83612291565b60405160200161198e93929190613550565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152908290527f08c379a00000000000000000000000000000000000000000000000000000000082526119ec91600401613710565b60405180910390fd5b505050565b611a02612dea565b604080516000606082018181526080830190935290918291611a3a565b611a27612e0b565b815260200190600190039081611a1f5790505b508152602001611a4984612365565b8152600060209091015292915050565b815151611aa890157f43616368650000000000000000000000000000000000000000000000000000007f616c726561647920696e697469616c697a656400000000000000000000000000611944565b611ab682602001518261239f565b5060400180516001019052565b8060400151604051908082528060200260200182016040528015611b0157816020015b611aee612e0b565b815260200190600190039081611ae65790505b5081526000805b826020015151811015611cc957600083602001518281518110611b2757fe5b602002602001015190505b8015611cae576000611b43826123d5565b90506000611b5184836125ac565b90506000611b65888363ffffffff61103b16565b600083815260018a01602052604090205490915074010000000000000000000000000000000000000000900460ff1615611c2c576040805160a08101825283815273ffffffffffffffffffffffffffffffffffffffff8316602082015260019181019190915260608101611bdf8a8563ffffffff61157916565b516fffffffffffffffffffffffffffffffff168152602001611c088a858563ffffffff61133016565b9052875180516001890198908110611c1c57fe5b6020026020010181905250611c9a565b6040805160a08101825283815273ffffffffffffffffffffffffffffffffffffffff831660208201526000918101829052606081019190915260808101611c7a8a858563ffffffff61133016565b9052875180516001890198908110611c8e57fe5b60200260200101819052505b611ca484846125b7565b9350505050611b32565b8360400151831415611cc05750611cc9565b50600101611b08565b5060408201518251516119f591808414917f53746f7261676500000000000000000000000000000000000000000000000000917f636163686520696e697469616c697a656420696d70726f7065726c7900000000916125c0565b611d2b612cda565b611d33612cda565b611d3b612cda565b611d43612cda565b6000611d4e8761268b565b905060005b81811015611e7757611d63612ced565b611d868a611d778b8563ffffffff61269016565b518d919063ffffffff61270c16565b9050611d918161277b565b15611d9c5750611e6f565b6000611dc7611db18b8563ffffffff61269016565b608001515160208401519063ffffffff61278316565b9050611dd1612cda565b611dd96127d7565b90508915611e2457611e2160018e016000611dfa8e8863ffffffff61269016565b5181526020808201929092526040908101600020815192830190915260050154815261217f565b90505b825115611e4d57611e46611e3883836127f9565b88519063ffffffff61281216565b8752611e6b565b611e68611e5a83836121b6565b87519063ffffffff61281216565b86525b5050505b600101611d53565b50919890975095505050505050565b611e8e612d04565b611e96612ced565b611e9e612ced565b611ea885886121cf565b915091506000611eb6612851565b90506000611eee611ee08a6040015163ffffffff168463ffffffff1661286190919063ffffffff16565b89519063ffffffff61278316565b90506000611efb8561277b565b15611f0857506000611f3a565b611f1282886121b6565b9050846020015184602001511015611f3a57611f3781856020015187602001516128a3565b90505b81811115611f4457fe5b60408051606081019091528a518190611f8d90611f88906bffffffffffffffffffffffff16611f7c8188670de0b6b3a76400006128a3565b9063ffffffff61281216565b6128b9565b6bffffffffffffffffffffffff908116825260208d810151920191611fc491611f889116611f7c8187670de0b6b3a76400006128a3565b6bffffffffffffffffffffffff1681526020018463ffffffff16815250955050505050505b949350505050565b60608160000180548060200260200160405190810160405280929190818152602001828054801561204157602002820191906000526020600020905b81548152602001906001019080831161202d575b50505050509050919050565b836120e55761205b83612291565b7f3a2000000000000000000000000000000000000000000000000000000000000061208584612291565b7f203c0000000000000000000000000000000000000000000000000000000000006120af85612918565b60405161198e9594939291907f3e0000000000000000000000000000000000000000000000000000000000000090602001613578565b50505050565b60008315806120f8575082155b1561210f57612108600083612a27565b90506107d8565b6000612121858563ffffffff61278316565b90506112e261214c6001611f7c6002612140888463ffffffff61286116565b9063ffffffff612a2716565b61215c838663ffffffff612a6916565b101561216957600061216c565b60015b60ff16611f7c838663ffffffff612a2716565b612187612cda565b6040805160208101909152825181906121ae90670de0b6b3a764000063ffffffff61281216565b905292915050565b60006107d8838360000151670de0b6b3a76400006128a3565b6121d7612ced565b6121df612ced565b6121e7612ced565b5060408051808201909152600181526020858101516fffffffffffffffffffffffffffffffff169082015261221a612ced565b50604080518082019091526000815285516fffffffffffffffffffffffffffffffff16602082015261224a612ced565b61225483876114c8565b905061225e612ced565b61226883886114c8565b91989197509095505050505050565b61227f612ced565b6107d88361228c84612aab565b612ad2565b606080826040516020016122a5919061353b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152919052905060205b801561234e5781517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9091019082908290811061231157fe5b01602001517fff00000000000000000000000000000000000000000000000000000000000000161561234957600101815290506106ab565b6122d8565b505060408051600081526020810190915292915050565b60606001610100830401604051908082528060200260200182016040528015612398578160200160208202803883390190505b5092915050565b815161010082049060ff8316906001821b908590849081106123bd57fe5b60200260200101818151179150818152505050505050565b600060ff6fffffffffffffffffffffffffffffffff831615612418577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8001612420565b608083901c92505b67ffffffffffffffff831615612457577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00161245f565b604083901c92505b63ffffffff831615612492577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00161249a565b602083901c92505b61ffff8316156124cb577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016124d3565b601083901c92505b60ff831615612503577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80161250b565b600883901c92505b600f83161561253b577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc01612543565b600483901c92505b6003831615612573577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0161257b565b600283901c92505b60018316156106c2577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0192915050565b610100919091020190565b6001901b900390565b84612684576125ce84612291565b7f3a200000000000000000000000000000000000000000000000000000000000006125f885612291565b7f203c00000000000000000000000000000000000000000000000000000000000061262286612918565b7f2c2000000000000000000000000000000000000000000000000000000000000061264c87612918565b60405161198e97969594939291907f3e00000000000000000000000000000000000000000000000000000000000000906020016135d6565b5050505050565b515190565b612698612e0b565b8251516126ee90808410907f4361636865000000000000000000000000000000000000000000000000000000907f696e76616c696420696e646578000000000000000000000000000000000000009086906125c0565b82518051839081106126fc57fe5b6020026020010151905092915050565b612714612ced565b61271c612ced565b61272d85858563ffffffff61119016565b905061273881612b64565b1561274d57612745612b7e565b9150506107d8565b612755612d04565b612765868563ffffffff61120f16565b905061277182826114c8565b9695505050505050565b602001511590565b600082612792575060006106c2565b8282028284828161279f57fe5b04146107d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ec90613731565b6127df612cda565b506040805160208101909152670de0b6b3a7640000815290565b60006107d883670de0b6b3a764000084600001516128a3565b6000828201838110156107d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ec90613721565b600061285c42612b9e565b905090565b60006107d883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612bf5565b6000611fe982612140868663ffffffff61278316565b6000816106c26bffffffffffffffffffffffff821682147f4d617468000000000000000000000000000000000000000000000000000000007f556e73616665206361737420746f2075696e74393600000000000000000000008461204d565b606081612959575060408051808201909152600181527f300000000000000000000000000000000000000000000000000000000000000060208201526106ab565b8160005b811561297157600101600a8204915061295d565b6060816040519080825280601f01601f19166020018201604052801561299e576020820181803883390190505b508593509050815b8015612a1e577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01600a840660300160f81b8282815181106129e457fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a840493506129a6565b50949350505050565b60006107d883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612c3b565b60006107d883836040518060400160405280601881526020017f536166654d6174683a206d6f64756c6f206279207a65726f0000000000000000815250612c8c565b612ab3612ced565b5060408051808201909152815115815260208083015190820152919050565b612ada612ced565b612ae2612ced565b8251845115159015151415612b155783511515815260208085015190840151612b0b9190612812565b60208201526107d8565b8260200151846020015110612b3e5783511515815260208085015190840151612b0b9190612861565b82511515815260208084015190850151612b589190612861565b60208201529392505050565b602001516fffffffffffffffffffffffffffffffff161590565b612b86612ced565b50604080518082019091526000808252602082015290565b6000816106c263ffffffff821682147f4d617468000000000000000000000000000000000000000000000000000000007f556e73616665206361737420746f2075696e74333200000000000000000000008461204d565b60008184841115612c33576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ec9190613710565b505050900390565b60008183612c76576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ec9190613710565b506000838581612c8257fe5b0495945050505050565b60008183612cc7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ec9190613710565b50828481612cd157fe5b06949350505050565b6040518060200160405280600081525090565b604080518082019091526000808252602082015290565b604080516060810182526000808252602082018190529181019190915290565b6040518060800160405280612d37612cda565b8152602001612d44612cda565b8152602001612d51612cda565b8152602001612d5e612cda565b905290565b60408051610120810182526000808252602082018190529181019190915260608101612d8d612ced565b8152602001612d9a612d04565b81526000602082018190526040820152606001612d51612cda565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b60405180606001604052806060815260200160608152602001600081525090565b6040518060a0016040528060008152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160001515815260200160006fffffffffffffffffffffffffffffffff168152602001612d5e612cda565b80356106c28161397e565b600060408284031215612e8157600080fd5b612e8b6040613814565b90506000612e998484612e64565b8252506020612eaa84848301612ee9565b60208301525092915050565b600060208284031215612ec857600080fd5b612ed26020613814565b90506000612ee08484612ef4565b82525092915050565b80356106c281613992565b80516106c281613992565b600060208284031215612f1157600080fd5b6000611fe98484612e64565b60008060408385031215612f3057600080fd5b6000612f3c8585612e64565b9250506020612f4d85828601612e64565b9150509250929050565b600060408284031215612f6957600080fd5b6000611fe98484612e6f565b60008060608385031215612f8857600080fd5b6000612f948585612e6f565b9250506040612f4d85828601612ee9565b600060208284031215612fb757600080fd5b6000611fe98484612eb6565b600060208284031215612fd557600080fd5b6000611fe98484612ee9565b600060208284031215612ff357600080fd5b6000611fe98484612ef4565b6000806040838503121561301257600080fd5b600061301e8585612ee9565b9250506020612f4d85828601612ee9565b600061303b838361306f565b505060200190565b600061304f83836133fb565b505060400190565b600061304f83836134ea565b600061303b8383613517565b6130788161384e565b82525050565b600061308982613841565b6130938185613845565b935061309e8361383b565b8060005b838110156130cc5781516130b6888261302f565b97506130c18361383b565b9250506001016130a2565b509495945050505050565b60006130e282613841565b6130ec8185613845565b93506130f78361383b565b8060005b838110156130cc57815161310f8882613043565b975061311a8361383b565b9250506001016130fb565b600061313082613841565b61313a8185613845565b93506131458361383b565b8060005b838110156130cc57815161315d8882613057565b97506131688361383b565b925050600101613149565b600061317e82613841565b6131888185613845565b93506131938361383b565b8060005b838110156130cc5781516131ab8882613063565b97506131b68361383b565b925050600101613197565b61307881613859565b6130786131d68261385e565b6138a8565b6130786131d682613883565b6130786131d6826138a8565b60006131fe82613841565b61320881856106ab565b9350613218818560208601613920565b9290920192915050565b6130788161390a565b61307881613915565b600061323f82613841565b6132498185613845565b9350613259818560208601613920565b6132628161394c565b9093019392505050565b6000613279601b83613845565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000815260200192915050565b60006132b2602183613845565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f81527f7700000000000000000000000000000000000000000000000000000000000000602082015260400192915050565b805160208301906120e58482613517565b805160608301906133268482613532565b5060208201516133396020850182613532565b5060408201516120e56040850182613520565b805161018083019061335e848261306f565b50602082015161337160208501826131c1565b50604082015161338460408501826131c1565b50606082015161339760608501826134d9565b5060808201516133aa60a0850182613315565b5060a08201516133be610100850182613222565b5060c08201516133d2610120850182613222565b5060e08201516133e6610140850182613304565b506101008201516120e5610160850182613304565b8051604083019061340c84826131c1565b5060208201516120e5602085018261350e565b805160c08301906134308482613529565b5060208201516134436020850182613529565b5060408201516134566040850182613529565b5060608201516134696060850182613529565b50608082015161347c6080850182613529565b5060a08201516120e560a085018261350e565b805160808301906134a08482613304565b5060208201516134b36020850182613304565b5060408201516134c66040850182613304565b5060608201516120e56060850182613304565b8051604083019061340c848261350e565b805160408301906134fb84826131c1565b5060208201516120e56020850182613517565b613078816138b5565b613078816138a8565b613078816138e3565b613078816138ec565b613078816138f9565b600061354782846131e7565b50602001919050565b600061355c82866131f3565b915061356882856131db565b6002820191506112e282846131f3565b600061358482896131f3565b915061359082886131db565b6002820191506135a082876131f3565b91506135ac82866131db565b6002820191506135bc82856131f3565b91506135c882846131ca565b506001019695505050505050565b60006135e2828b6131f3565b91506135ee828a6131db565b6002820191506135fe82896131f3565b915061360a82886131db565b60028201915061361a82876131f3565b915061362682866131db565b60028201915061363682856131f3565b915061364282846131ca565b5060010198975050505050505050565b602081016106c2828461306f565b6060810161366e828661306f565b61367b6020830185613517565b611fe96040830184613517565b602080825281016107d88184613173565b608080825281016136aa8187613173565b905081810360208301526136be818661307e565b905081810360408301526136d281856130d7565b905081810360608301526127718184613125565b602081016106c282846131c1565b602081016106c28284613222565b602081016106c2828461322b565b602080825281016107d88184613234565b602080825281016106c28161326c565b602080825281016106c2816132a5565b602081016106c28284613304565b606081016106c28284613315565b61018081016106c2828461334c565b610220810161377b828761334c565b613789610180830186613315565b6137976101e0830185613304565b6112e2610200830184613304565b604081016106c282846133fb565b60c081016106c2828461341f565b608081016106c2828461348f565b604081016106c282846134d9565b604081016137eb8285613304565b6107d86020830184613304565b604081016106c282846134ea565b602081016106c28284613517565b60405181810167ffffffffffffffff8111828210171561383357600080fd5b604052919050565b60200190565b5190565b90815260200190565b60006106c2826138ca565b151590565b7fff000000000000000000000000000000000000000000000000000000000000001690565b7fffff0000000000000000000000000000000000000000000000000000000000001690565b90565b806106ab81613974565b6fffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1690565b63ffffffff1690565b67ffffffffffffffff1690565b6bffffffffffffffffffffffff1690565b60006106c28261384e565b60006106c2826138ab565b60005b8381101561393b578181015183820152602001613923565b838111156120e55750506000910152565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01690565b6003811061103857fe5b6139878161384e565b811461103857600080fd5b613987816138a856fea365627a7a72315820b8484af71410c324f1dda1d1ae3e5b9ce63bf7af2006d6f079805370e493c03e6c6578706572696d656e74616cf564736f6c63430005100040",
|
|
1418
1418
|
"sourceMap": "1417:11178:49:-;;;-1:-1:-1;;;1652:24:49;;1417:11178;8:9:-1;5:2;;;30:1;27;20:12;5:2;1417:11178:49;;;;;;;",
|
|
1419
1419
|
"deployedSourceMap": "1417:11178:49:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1417:11178:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5420:471;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;10872:174;;;;;;;;;:::i;:::-;;;;;;;;2867:210;;;;;;;;;:::i;:::-;;;;;;;;9248:256;;;;;;;;;:::i;:::-;;;;;;;;;4021:225;;;;;;;;;:::i;:::-;;;;;;;;4252:234;;;;;;;;;:::i;4734:236::-;;;;;;;;;:::i;:::-;;;;;;;;2736:125;;;:::i;:::-;;;;;;;;9034:208;;;;;;;;;:::i;10664:202::-;;;;;;;;;:::i;7748:255::-;;;;;;;;;:::i;:::-;;;;;;;;1734:150;;;:::i;3758:257::-;;;;;;;;;:::i;:::-;;;;;;;;5195:219;;;;;;;;;:::i;4976:213::-;;;;;;;;;:::i;2384:143::-;;;:::i;:::-;;;;;;;;9779:879;;;;;;;;;:::i;:::-;;;;;;;;;;;2216:162;;;:::i;5897:247::-;;;;;;;;;:::i;3083:211::-;;;;;;;;;:::i;8809:219::-;;;;;;;;;:::i;7019:491::-;;;;;;;;;:::i;:::-;;;;;;;;;;;1890:162;;;:::i;8244:369::-;;;;;;;;;:::i;:::-;;;;;;;;8009:229;;;;;;;;;:::i;3300:223::-;;;;;;;;;:::i;:::-;;;;;;;;6450:346;;;;;;;;;:::i;7516:226::-;;;;;;;;;:::i;3529:223::-;;;;;;;;;:::i;8619:184::-;;;;;;;;;:::i;:::-;;;;;;;;2058:152;;;:::i;2533:143::-;;;:::i;:::-;;;;;;;;6802:211;;;;;;;;;:::i;:::-;;;;;;;;11052:184;;;;;;;;;:::i;9510:263::-;;;;;;;;;:::i;4492:236::-;;;;;;;;;:::i;6150:294::-;;;;;;;;;:::i;5420:471::-;5520:13;5549:12;5564:1;5549:16;;5575:21;5610:1;5599:13;;;;;;;;;;;;;;;;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;136:17;;-1:-1;5599:13:49;-1:-1:-1;5668:2:49;5622:12;5637:35;:25;:35;;;;5575:37;;-1:-1:-1;5714:147:49;5721:12;;;;;:27;;;5747:1;5737:7;:11;5721:27;5714:147;;;5785:7;5764;5772:9;;;;;;5764:18;;;;;;;;;;;;;;;;;;:28;;;;5816:7;:34;;;:25;:34;;;;;;5714:147;;;-1:-1:-1;5877:7:49;-1:-1:-1;;5420:471:49;;;;:::o;10872:174::-;10978:4;11005:34;10978:4;11030:8;11005:34;:24;:34;:::i;:::-;10998:41;10872:174;-1:-1:-1;;10872:174:49:o;2867:210::-;2975:7;2998:29;3018:8;2998:19;:29::i;:::-;3044:26;:7;3061:8;3044:26;:16;:26;:::i;9248:256::-;9362:21;;:::i;:::-;9385;;:::i;:::-;9429:68;9455:7;9491:5;9429:25;:68::i;:::-;9422:75;;;;9248:256;;;:::o;4021:225::-;4128:12;4156:29;4176:8;4156:19;:29::i;:::-;-1:-1:-1;4202:7:49;:25;;;:15;:25;;;;;:37;;;;;;4021:225::o;4252:234::-;4362:15;4393:29;4413:8;4393:19;:29::i;:::-;-1:-1:-1;4439:7:49;:25;;;:15;:25;;;;;:40;;;;;;4252:234::o;4734:236::-;4843:19;;:::i;:::-;4878:29;4898:8;4878:19;:29::i;:::-;-1:-1:-1;4924:7:49;:25;;;:15;:25;;;;;;;;;4917:46;;;;;;;;4924:39;;;;4917:46;;;;4734:236::o;2736:125::-;2806:7;2836:18;2736:125;:::o;9034:208::-;9160:7;9190:45;9160:7;9227;9190:45;:36;:45;:::i;10664:202::-;10792:4;10819:40;10792:4;10843:5;10850:8;10819:40;:23;:40;:::i;:::-;10812:47;10664:202;-1:-1:-1;;;10664:202:49:o;7748:255::-;7885:16;;:::i;:::-;7917:29;7937:8;7917:19;:29::i;:::-;7963:33;:7;7978;7987:8;7963:33;:14;:33;:::i;1734:150::-;1805:19;;:::i;:::-;-1:-1:-1;1840:37:49;;;;;;;;;1847:18;1840:37;;;1734:150;:::o;3758:257::-;3866:21;;:::i;:::-;3903:29;3923:8;3903:19;:29::i;:::-;3949:59;3971:8;3981:26;:7;3971:8;3981:26;:16;:26;:::i;:::-;3949:7;;:59;;:21;:59;:::i;5195:219::-;5303:4;5323:29;5343:8;5323:19;:29::i;:::-;-1:-1:-1;5369:7:49;:25;;;:15;:25;;;;;:38;;;;;;;5195:219::o;4976:213::-;5081:4;5101:29;5121:8;5101:19;:29::i;:::-;-1:-1:-1;5147:7:49;:25;;;:15;:25;;;;;:35;;;;;;;4976:213::o;2384:143::-;2454:25;;:::i;:::-;-1:-1:-1;2495:25:49;;;;;;;;2502:18;2495:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;2495:25:49;;;;;;;;;;;;;;;;;;;;2384:143;:::o;9779:879::-;9908:13;;;;;10067:39;:7;10098;10067:39;:30;:39;:::i;:::-;10040:66;;10116:23;10156:7;:14;10142:29;;;;;;;;;;;;;;;;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;136:17;;-1:-1;10142:29:49;;10116:55;;10181:23;10223:7;:14;10207:31;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;10181:57;;10248:23;10290:7;:14;10274:31;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;10248:57:49;-1:-1:-1;10321:9:49;10316:231;10340:7;:14;10336:1;:18;10316:231;;;10387:33;10409:7;10417:1;10409:10;;;;;;;;;;;;;;10387:21;:33::i;:::-;10375:6;10382:1;10375:9;;;;;;;;;;;;;:45;;;;;;;;;;;10444:34;10458:7;10467;10475:1;10467:10;;;;;;;;;;;;;;10444:13;:34::i;:::-;10434:4;10439:1;10434:7;;;;;;;;;;;;;:44;;;;10502:34;10516:7;10525;10533:1;10525:10;;;;;;;;;;;;;;10502:13;:34::i;:::-;10492:4;10497:1;10492:7;;;;;;;;;;;;;;;;;:44;10356:3;;10316:231;;;-1:-1:-1;10578:7:49;;10599:6;;-1:-1:-1;10599:6:49;-1:-1:-1;10578:7:49;;-1:-1:-1;9779:879:49;-1:-1:-1;;9779:879:49:o;2216:162::-;2292:21;;:::i;:::-;-1:-1:-1;2329:42:49;;;;;;;;;2336:35;2329:42;;;2216:162;:::o;5897:247::-;5998:21;;:::i;:::-;6035:29;6055:8;6035:19;:29::i;:::-;6081:56;6100:8;6110:26;:7;6100:8;6110:26;:16;:26;:::i;:::-;6081:7;;:56;;:18;:56;:::i;3083:211::-;3192:7;3215:25;3234:5;3215:18;:25::i;:::-;-1:-1:-1;3257:30:49;;:7;:30;;;:23;:30;;;;;;;3083:211::o;8809:219::-;8943:16;8982:39;:7;9013;8982:39;:30;:39;:::i;7019:491::-;7136:21;;:::i;:::-;7171;;:::i;:::-;7206;;:::i;:::-;7241:20;;:::i;:::-;7286:29;7306:8;7286:19;:29::i;:::-;7346:19;7356:8;7346:9;:19::i;:::-;7379:31;7401:8;7379:21;:31::i;:::-;7424:24;7439:8;7424:14;:24::i;:::-;7462:31;7484:8;7462:21;:31::i;:::-;7325:178;;;;;;;;7019:491;;;;;:::o;1890:162::-;1967:19;;:::i;:::-;-1:-1:-1;2002:43:49;;;;;;;;;2009:36;2002:43;;;1890:162;:::o;8244:369::-;8381:16;;:::i;:::-;8413:29;8433:8;8413:19;:29::i;:::-;8459:147;8490:33;:7;8505;8514:8;8490:33;:14;:33;:::i;:::-;8537:59;8559:8;8569:26;:7;8559:8;8569:26;:16;:26;:::i;8537:59::-;8459:17;:147::i;8009:229::-;8159:16;;:::i;3300:223::-;3404:21;;:::i;:::-;3441:29;3461:8;3441:19;:29::i;:::-;3487;:7;3507:8;3487:29;:19;:29;:::i;6450:346::-;6598:19;;:::i;:::-;6633:33;6653:12;6633:19;:33::i;:::-;6676;6696:12;6676:19;:33::i;:::-;6726:63;:7;6762:12;6776;6726:63;:35;:63;:::i;7516:226::-;7621:16;;:::i;:::-;7653:29;7673:8;7653:19;:29::i;:::-;7699:36;:7;7726:8;7699:36;:26;:36;:::i;3529:223::-;3636:21;;:::i;:::-;3673:29;3693:8;3673:19;:29::i;:::-;3719:26;:7;3736:8;3719:26;:16;:26;:::i;8619:184::-;8733:14;8770:26;8733:14;8788:7;8770:26;:17;:26;:::i;2058:152::-;2130:19;;:::i;:::-;-1:-1:-1;2165:38:49;;;;;;;;;2172:31;2165:38;;;2058:152;:::o;2533:143::-;2603:25;;:::i;:::-;-1:-1:-1;2644:25:49;;;;;;;;2651:18;2644:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2533:143::o;6802:211::-;6898:21;;:::i;:::-;6935:29;6955:8;6935:19;:29::i;:::-;-1:-1:-1;6981:7:49;:25;;;:15;:25;;;;;;;;;6974:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6802:211::o;11052:184::-;11163:4;11190:39;11163:4;11218:10;11190:39;:27;:39;:::i;9510:263::-;9632:21;;:::i;:::-;9655;;:::i;:::-;9699:67;9725:7;9761:4;9699:25;:67::i;4492:236::-;4601:19;;:::i;:::-;4636:29;4656:8;4636:19;:29::i;:::-;-1:-1:-1;4682:7:49;:25;;;:15;:25;;;;;;;;;4675:46;;;;;;;;4682:39;;;;4675:46;;;;4492:236::o;6150:294::-;6258:20;;:::i;:::-;6294:29;6314:8;6294:19;:29::i;:::-;6340:97;6379:8;6401:26;:7;6379:8;6401:26;:16;:26;:::i;:::-;6340:7;;:97;;:25;:97;:::i;14844:207:79:-;15013:31;;14986:4;15013:31;;;:21;;;;;:31;;;;;;;;;14844:207::o;11364:274:49:-;11506:7;:18;11469:162;;11495:29;;:78;;;;-1:-1:-1;11571:1:49;11528:25;;;:15;:25;;;;;:31;:45;:31;:45;;11495:78;11587:4;;11469:162;:12;:162::i;:::-;11364:274;:::o;6920:200:79:-;7054:7;7084:23;;;:13;;;;;:23;;;;;:29;;;;6920:200::o;11987:606:49:-;12144:21;;:::i;:::-;12167;;:::i;:::-;12204:24;12231:39;:7;12262;12231:39;:30;:39;:::i;:::-;12204:66;;12307:30;;:::i;:::-;12340:28;12353:7;:14;12340:12;:28::i;:::-;12307:61;-1:-1:-1;12383:9:49;12378:91;12402:7;:14;12398:1;:18;12378:91;;;12437:21;12447:7;12455:1;12447:10;;;;;;;;;;;;;;12437:5;:9;;:21;;;;:::i;:::-;12418:3;;12378:91;;;-1:-1:-1;12478:30:49;:7;12502:5;12478:30;:23;:30;:::i;:::-;12526:60;:7;12551;12560:5;12567:18;12526:60;:24;:60;:::i;:::-;12519:67;;;;;;11987:606;;;;;:::o;9926:261:79:-;10124:13;;10109:29;;10079:7;10109:29;;;:14;;;;;:29;;;;;;;;10139:14;;;;10109:45;;;;;;;:71;;;;;;;9926:261::o;15280:230::-;15471:22;;;;15444:4;15471:22;;;:15;;;;;:22;;;;;;;;:32;;;;;;;;;;;;;15280:230::o;8620:279::-;8789:16;;:::i;:::-;-1:-1:-1;8843:13:79;;8828:29;;;;;;:14;;;:29;;;;;;;;8858:14;;;;8828:45;;;;;;;:64;;;:54;;:64;;;;;;8821:71;;;;;;;;;;;;;;;;;;;;;;;;;;8620:279;;;;;:::o;7352:214::-;7486:21;;:::i;:::-;-1:-1:-1;7530:23:79;;;;:13;;;;;:23;;;;;;;;;7523:36;;;;;;;7530:29;;;;7523:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7352:214::o;10749:463::-;10925:21;;:::i;:::-;10962:25;;:::i;:::-;10990:40;:5;11014:8;11024:5;10990:40;:23;:40;:::i;:::-;10962:68;-1:-1:-1;11048:157:79;11088:5;10962:68;11125:27;:5;11143:8;11125:27;:17;:27;:::i;:::-;11048:157;;;;;;;;;11166:29;;;11048:157;;;:26;:157::i;:::-;11041:164;10749:463;-1:-1:-1;;;;;10749:463:79:o;9644:276::-;9845:13;;9830:29;;;;;;:14;;;:29;;;;;;;;9860:14;;;;9830:45;;;;;;;9791:16;;9830:83;;:74;;:81;:83::i;11870:496::-;12029:21;;:::i;:::-;12066:19;12101:23;;;:13;;;:23;;;;;:35;;;;;12147:27;;:::i;:::-;12177:22;;;;;:15;;;;;;:22;;12193:5;;12177:22;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12177:22:79;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12177:22:79;;;;;;;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;12177:22:79;;;;;;;;;12235:11;;12147:52;;-1:-1:-1;12209:128:79;;12235:16;;12265:4;12209:128;12319:8;12209:12;:128::i;11644:252:49:-;11795:30;;;;11779:7;11795:30;;;:23;:30;;;;;;;;;11779:47;;:15;:47;;;;;:53;11846:4;;11744:145;;11779:53;;;;11770:62;;;;11744:145;:12;:145::i;4154:567:74:-;4285:16;;:::i;:::-;4346:11;;;;4372:10;;4338:20;;;;;4368:347;;;4405:130;;;;;;;;;4439:4;4405:130;;;4501:12;;;;4405:130;;;;4468:52;;:10;;:52;;1200:6;4468:52;:32;:52;:::i;:::-;4405:130;;;4398:137;;;;;4368:347;4573:131;;;;;;;;;-1:-1:-1;4573:131:74;;4670:12;;4573:131;;;;4637:52;;:10;;:52;;1200:6;4637:52;:32;:52;:::i;7126:220:79:-;7263:21;;:::i;:::-;-1:-1:-1;7307:23:79;;;;:13;;;;:23;;;;;;;;;7300:39;;;;;;;;7307:32;;;7300:39;;;;;;;;;;;;;;;;7126:220;;;;:::o;10193:550::-;10380:19;;:::i;:::-;10432:34;;;:40;10415:14;10527:27;;;10432:34;10527:13;;:27;;;;;;;;;10511:58;;;;;;;;10527:41;;;;10511:58;;;10491:79;;10432:40;;10511:58;;:15;:58::i;:::-;10491:11;:79::i;:::-;10482:88;;10589:79;10601:6;10609:58;10625:5;:13;;:27;10639:12;10625:27;;;;;;;;;;;:41;;10609:58;;;;;;;;;;;;;;;;;:15;:58::i;10589:79::-;10685:51;;;;;;;;;;;;;10193:550;-1:-1:-1;;;;;10193:550:79:o;7572:794::-;7716:16;;:::i;:::-;7748:27;;:::i;:::-;7778:24;:5;7793:8;7778:24;:14;:24;:::i;:::-;7748:54;;7812:30;;:::i;:::-;7845:27;:5;7863:8;7845:27;:17;:27;:::i;:::-;7812:60;-1:-1:-1;7883:13:79;7899:24;:5;7914:8;7899:24;:14;:24;:::i;:::-;7883:40;;7934:27;;:::i;:::-;7964:112;;;;;;;;7994:4;7964:112;;8019:46;;;;;7964:112;;;;8019:31;;;;;;:46;;8059:4;;8019:46;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8019:46:79;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8019:46:79;;;;;;;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;8019:46:79;;;;;;;;;7964:112;;7934:142;-1:-1:-1;8101:26:79;;:::i;:::-;8141;;:::i;:::-;8180:39;8203:8;8213:5;8180:22;:39::i;:::-;8087:132;;-1:-1:-1;8087:132:79;-1:-1:-1;8319:40:79;8087:132;8319:25;:10;8087:132;8319:25;:14;:25;:::i;:::-;:29;:40;:29;:40;:::i;:::-;8312:47;7572:794;-1:-1:-1;;;;;;;;;7572:794:79:o;8372:242::-;8570:13;;8555:29;;8518:14;8555:29;;;:14;;;;;:29;;;;;;;;8585:14;;;;8555:45;;;;;;;:52;;;;8372:242::o;15057:217::-;15231:36;;15204:4;15231:36;;;:24;;;;;:36;;;;;;;;;15057:217::o;11218:646::-;11398:20;;:::i;:::-;11434:30;;:::i;:::-;11467:27;:5;11485:8;11467:27;:17;:27;:::i;:::-;11434:60;;11518:26;;:::i;:::-;11558;;:::i;:::-;11597:39;11620:8;11630:5;11597:22;:39::i;:::-;11504:132;;;;11647:25;;:::i;:::-;11675:23;;;;:13;;;:23;;;;;:38;;;;;:54;11743:24;11675:5;11689:8;11743:24;:14;:24;:::i;:::-;11781:9;:15;;;11810:9;:15;;;11675:160;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11675:160:79;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11675:160:79;;;;;;;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;11675:160:79;;;;;;;;;11647:188;11218:646;-1:-1:-1;;;;;;;;11218:646:79:o;1294:426:77:-;1428:4;1423:291;;1542:24;1561:4;1542:18;:24::i;:::-;1592:5;1623:26;1642:6;1623:18;:26::i;:::-;1500:171;;;;;;;;;;;;;;;22:32:-1;26:21;;;22:32;6:49;;1500:171:77;;;;1448:255;;;;;;;;;;;;;;;;;1423:291;1294:426;;;:::o;1453:299:68:-;1550:18;;:::i;:::-;1591:154;;;-1:-1:-1;1591:154:68;;;1626:19;;;;;;;;;1591:154;;;;1626:19;;;;;:::i;:::-;;;;;;;;;;;;;;;;;1591:154;;;;1674:30;1693:10;1674:18;:30::i;:::-;1591:154;;1733:1;1591:154;;;;;1584:161;1453:299;-1:-1:-1;;1453:299:68:o;2613:453::-;2883:13;;:20;2857:114;;2883:25;2922:4;2857:114;:12;:114::i;:::-;2982:42;2994:5;:19;;;3015:8;2982:11;:42::i;:::-;-1:-1:-1;3035:19:68;;:24;;3058:1;3035:24;;;2613:453::o;23520:2105:79:-;23691:5;:19;;;23668:43;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;23652:59:79;;:13;;24061:1352;24082:5;:19;;;:26;24078:1;:30;24061:1352;;;24129:11;24143:5;:19;;;24163:1;24143:22;;;;;;;;;;;;;;24129:36;;24179:1137;24186:11;;24179:1137;;24217:15;24235:35;24263:6;24235:27;:35::i;:::-;24217:53;;24288:13;24304:38;24328:1;24331:10;24304:23;:38::i;:::-;24288:54;-1:-1:-1;24360:13:79;24376:24;:5;24288:54;24376:24;:14;:24;:::i;:::-;24422:23;;;;:13;;;:23;;;;;:33;24360:40;;-1:-1:-1;24422:33:79;;;;;24418:786;;;24506:280;;;;;;;;;;;;;;;;;;24630:4;24506:280;;;;;;;;;;24667:27;:5;24555:8;24667:27;:17;:27;:::i;:::-;:34;24506:280;;;;;;24730:33;:5;24747:8;24757:5;24730:33;:16;:33;:::i;:::-;24506:280;;24479:13;;:24;;24493:9;;;;;24479:24;;;;;;;;;;;:307;;;;24418:786;;;24937:248;;;;;;;;;;;;;;;;;;-1:-1:-1;24937:248:79;;;;;;;;;;;;;;;;25129:33;:5;24986:8;25023:5;25129:33;:16;:33;:::i;:::-;24937:248;;24910:13;;:24;;24924:9;;;;;24910:24;;;;;;;;;;;:275;;;;24418:786;25268:33;25282:6;25290:10;25268:13;:33::i;:::-;25259:42;;24179:1137;;;;;;25344:5;:19;;;25333:7;:30;25329:74;;;25383:5;;;25329:74;-1:-1:-1;24110:3:79;;24061:1352;;;-1:-1:-1;25449:19:79;;;;25588:13;;:20;25423:195;;25449:30;;;;25493:4;;25423:195;;:12;:195::i;12372:1243::-;12598:21;;:::i;:::-;12621;;:::i;:::-;12658:33;;:::i;:::-;12701;;:::i;:::-;12745:18;12766:21;:5;:19;:21::i;:::-;12745:42;-1:-1:-1;12802:9:79;12797:768;12821:10;12817:1;:14;12797:768;;;12852:24;;:::i;:::-;12879:51;12892:7;12901:19;:5;12918:1;12901:19;:16;:19;:::i;:::-;:28;12879:5;;:51;;:12;:51;:::i;:::-;12852:78;;12949:16;:7;:14;:16::i;:::-;12945:63;;;12985:8;;;12945:63;13022:18;13043:50;13061:19;:5;13078:1;13061:19;:16;:19;:::i;:::-;:25;;;:31;13043:13;;;;;:50;:17;:50;:::i;:::-;13022:71;;13107:26;;:::i;:::-;13136:13;:11;:13::i;:::-;13107:42;;13167:18;13163:140;;;13214:74;13230:13;;;:43;13244:19;:5;13261:1;13244:19;:16;:19;:::i;:::-;:28;13230:43;;;;;;;;;;;;;;13244:28;13230:43;13214:74;;;;;;;;13230:57;;13214:74;;;:15;:74::i;:::-;13205:83;;13163:140;13321:12;;13317:238;;;13373:54;13395:31;13407:10;13419:6;13395:11;:31::i;:::-;13373:17;;;:54;:21;:54;:::i;:::-;13353:74;;13317:238;;;13486:54;13508:31;13520:10;13532:6;13508:11;:31::i;:::-;13486:17;;;:54;:21;:54;:::i;:::-;13466:74;;13317:238;12797:768;;;;12833:3;;12797:768;;;-1:-1:-1;13583:11:79;;13596;;-1:-1:-1;12372:1243:79;-1:-1:-1;;;;;;12372:1243:79:o;2227:1610:74:-;2443:12;;:::i;:::-;2485:26;;:::i;:::-;2525;;:::i;:::-;2564:30;2578:8;2588:5;2564:13;:30::i;:::-;2471:123;;;;2652:18;2673;:16;:18::i;:::-;2652:39;;2701:22;2726:58;2741:42;2766:5;:16;;;2741:42;;2749:11;2741:20;;:24;;:42;;;;:::i;:::-;2726:10;;;:58;:14;:58;:::i;:::-;2701:83;;2842:22;2878:23;2891:9;2878:12;:23::i;:::-;2874:639;;;-1:-1:-1;2934:1:74;2874:639;;;2983:41;2995:14;3011:12;2983:11;:41::i;:::-;2966:58;;3060:9;:15;;;3042:9;:15;;;:33;3038:465;;;3423:65;3439:14;3455:9;:15;;;3472:9;:15;;;3423;:65::i;:::-;3406:82;;3038:465;3547:14;3529;:32;;3522:40;;;;3580:250;;;;;;;;;3664:12;;3580:250;;3608:76;;:69;;;;:51;:69;3638:14;1200:6;3608:15;:51::i;:::-;:55;:69;:55;:69;:::i;:::-;:74;:76::i;:::-;3580:250;;;;;;;3762:12;;;;3580:250;;;3706:76;;:69;;;:51;:69;3736:14;1200:6;3706:15;:51::i;:76::-;3580:250;;;;;;3808:11;3580:250;;;;;3573:257;;;;;;;2227:1610;;;;;;;:::o;4037:109:70:-;4093:16;4128:3;:11;;4121:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4037:109;;;:::o;1726:561:77:-;1886:4;1881:400;;2000:24;2019:4;2000:18;:24::i;:::-;2050:5;2081:26;2100:6;2081:18;:26::i;:::-;2133:6;2165:19;2175:8;2165:9;:19::i;:::-;1958:280;;;;;;;;;2210:6;;1958:280;;;;1881:400;1726:561;;;;:::o;2059:724:75:-;2223:7;2250:11;;;:29;;-1:-1:-1;2265:14:75;;2250:29;2246:151;;;2358:28;2371:1;2374:11;2358:12;:28::i;:::-;2351:35;;;;2246:151;2406:11;2420:21;:6;2431:9;2420:21;:10;:21;:::i;:::-;2406:35;-1:-1:-1;2680:96:75;2735:32;2765:1;2735:25;2758:1;2735:18;:11;2765:1;2735:18;:15;:18;:::i;:::-;:22;:25;:22;:25;:::i;:32::-;2708:23;:6;2719:11;2708:23;:10;:23;:::i;:::-;:59;;:67;;2774:1;2708:67;;;2770:1;2708:67;2680:96;;:23;:6;2691:11;2680:23;:10;:23;:::i;1283:168:69:-;1376:11;;:::i;:::-;1410:34;;;;;;;;;1424:7;;1410:34;;1424:17;;1006:6;1424:17;:11;:17;:::i;:::-;1410:34;;1403:41;1283:168;-1:-1:-1;;1283:168:69:o;1457:188::-;1570:7;1600:38;1616:6;1624:1;:7;;;1006:6;1600:15;:38::i;5487:601:74:-;5631:16;;:::i;:::-;5649;;:::i;:::-;5681:26;;:::i;:::-;-1:-1:-1;5710:81:74;;;;;;;;;5740:4;5710:81;;;5765:15;;;;5710:81;;;;;;5801:26;;:::i;:::-;-1:-1:-1;5830:82:74;;;;;;;;;-1:-1:-1;5830:82:74;;5886:15;;5830:82;;;;;;5922:26;;:::i;:::-;5951;5960:9;5971:5;5951:8;:26::i;:::-;5922:55;;5987:26;;:::i;:::-;6016;6025:9;6036:5;6016:8;:26::i;:::-;6060:9;;;;-1:-1:-1;5487:601:74;;-1:-1:-1;;;;;;5487:601:74:o;4555:169:82:-;4665:10;;:::i;:::-;4698:19;4702:1;4705:11;4714:1;4705:8;:11::i;:::-;4698:3;:19::i;6359:966:77:-;6462:12;6537:19;6576:5;6559:23;;;;;;;;;;;;;22:32:-1;26:21;;;22:32;6:49;;6559:23:77;;;;-1:-1:-1;49:4;6688:571:77;6709:5;;6688:571;;6960:9;;6862:3;;;;;6960:6;;6862:3;;6960:9;;;;;;;;;;;;:14;6956:293;;7015:1;7011:5;7141:22;;7148:6;-1:-1:-1;7221:13:77;;6956:293;6688:571;;;-1:-1:-1;;7306:12:77;;;7316:1;7306:12;;;;;;;;;7299:19;-1:-1:-1;;6359:966:77:o;996:146:67:-;1058:13;893:1;942:3;1102:9;:25;1101:33;1090:45;;;;;;;;;;;;;;;;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;136:17;;-1:-1;1090:45:67;-1:-1:-1;1083:52:67;996:146;-1:-1:-1;;996:146:67:o;1308:263::-;1517:20;;942:3;1427:24;;;1483;;;;893:1;1542:21;;;1517:7;;1427:24;;1517:20;;;;;;;;;;;:47;;;;;;;;;;;1308:263;;;;:::o;2086:1014::-;2152:4;2223:3;2241:15;;;:19;2237:100;;2276:10;;2237:100;;;2323:3;2317:9;;;;;2237:100;2351:14;;;:18;2347:97;;2385:9;;2347:97;;;2431:2;2425:8;;;;;2347:97;2458:14;;;:18;2454:97;;2492:9;;2454:97;;;2538:2;2532:8;;;;;2454:97;2565:14;;;:18;2561:97;;2599:9;;2561:97;;;2645:2;2639:8;;;;;2561:97;2672:13;;;:17;2668:94;;2705:8;;2668:94;;;2750:1;2744:7;;;;;2668:94;2780:3;2776:7;;:11;2772:88;;2803:8;;2772:88;;;2848:1;2842:7;;;;;2772:88;2878:3;2874:7;;:11;2870:143;;2901:8;;2870:143;;;2946:1;2940:7;;;;;2870:143;3031:3;3027:7;;:11;3023:50;;3054:8;;3090:3;2086:1014;-1:-1:-1;;2086:1014:67:o;1148:154::-;942:3;1267:21;;;;1266:29;;1148:154::o;1895:137::-;893:1;2014:10;;2004:21;;;1895:137::o;2293:663:77:-;2479:4;2474:476;;2593:24;2612:4;2593:18;:24::i;:::-;2643:5;2674:26;2693:6;2674:18;:26::i;:::-;2726:6;2758:19;2768:8;2758:9;:19::i;:::-;2803:5;2834:19;2844:8;2834:9;:19::i;:::-;2551:356;;;;;;;;;;;2879:6;;2551:356;;;;2474:476;2293:663;;;;;:::o;1809:167:68:-;1949:13;:20;;1809:167::o;3072:371::-;3202:17;;:::i;:::-;3269:13;;:20;3235:164;;3261:28;;;;3303:4;;3235:164;;3261:5;;3235:12;:164::i;:::-;3416:13;;:20;;3430:5;;3416:20;;;;;;;;;;;;3409:27;;3072:371;;;;:::o;8905:448:79:-;9074:16;;:::i;:::-;9106:20;;:::i;:::-;9129:31;:5;9142:7;9151:8;9129:31;:12;:31;:::i;:::-;9106:54;;9175:12;:3;:10;:12::i;:::-;9171:65;;;9210:15;:13;:15::i;:::-;9203:22;;;;;9171:65;9246:27;;:::i;:::-;9276:24;:5;9291:8;9276:24;:14;:24;:::i;:::-;9246:54;;9317:29;9335:3;9340:5;9317:17;:29::i;:::-;9310:36;8905:448;-1:-1:-1;;;;;;8905:448:79:o;6182:137:82:-;6300:7;;;:12;;6182:137::o;2159:459:124:-;2217:7;2458:6;2454:45;;-1:-1:-1;2487:1:124;2480:8;;2454:45;2521:5;;;2525:1;2521;:5;:1;2544:5;;;;;:10;2536:56;;;;;;;;;;;;;1153:124:69;1215:11;;:::i;:::-;-1:-1:-1;1249:21:69;;;;;;;;;1006:6;1249:21;;1153:124;:::o;1651:188::-;1764:7;1794:38;1810:6;1006;1824:1;:7;;;1794:15;:38::i;834:176:124:-;892:7;923:5;;;946:6;;;;938:46;;;;;;;;;;;;;910:132:80;980:6;1009:26;1019:15;1009:9;:26::i;:::-;1002:33;;910:132;:::o;1274:134:124:-;1332:7;1358:43;1362:1;1365;1358:43;;;;;;;;;;;;;;;;;:3;:43::i;1110:228:75:-;1263:7;1293:38;1319:11;1293:21;:6;1304:9;1293:21;:10;:21;:::i;3110:310::-;3201:6;3246;3263:127;3289:16;;;;;3319:4;3263:127;3246:6;3263:12;:127::i;7331:912:77:-;7425:12;7457:10;7453:51;;-1:-1:-1;7483:10:77;;;;;;;;;;;;;;;;;;;7453:51;7565:5;7553:9;7604:69;7611:6;;7604:69;;7633:8;;7660:2;7655:7;;;;7604:69;;;7714:17;7744:6;7734:17;;;;;;;;;;;;;;;;;;;;;;;;;21:6:-1;;104:10;7734:17:77;87:34:-1;135:17;;-1:-1;7734:17:77;-1:-1:-1;7843:5:77;;-1:-1:-1;7714:37:77;-1:-1:-1;7875:6:77;7858:357;7883:5;;7858:357;;8036:3;;8132:2;8128:1;:6;902:2;8114:21;8103:34;;8093:4;8098:1;8093:7;;;;;;;;;;;:44;;;;;;;;;;-1:-1:-1;8202:2:77;8197:7;;;;7858:357;;;-1:-1:-1;8232:4:77;7331:912;-1:-1:-1;;;;7331:912:77:o;3073:130:124:-;3131:7;3157:39;3161:1;3164;3157:39;;;;;;;;;;;;;;;;;:3;:39::i;4500:128::-;4558:7;4584:37;4588:1;4591;4584:37;;;;;;;;;;;;;;;;;:3;:37::i;5660:203:82:-;5753:10;;:::i;:::-;-1:-1:-1;5786:70:82;;;;;;;;;5811:6;;5810:7;5786:70;;;5838:7;;;;5786:70;;;;5660:203;;;:::o;4730:610::-;4840:10;;:::i;:::-;4866:17;;:::i;:::-;4907:6;;4897;;:16;;;;;;4893:418;;;4943:6;;4929:20;;;;4991:7;;;;;5000;;;;4978:30;;4991:7;4978:12;:30::i;:::-;4963:12;;;:45;4893:418;;;5054:1;:7;;;5043:1;:7;;;:18;5039:262;;5095:6;;5081:20;;;;5147:7;;;;;5156;;;;5134:30;;5147:7;5134:12;:30::i;5039:262::-;5217:6;;5203:20;;;;5269:7;;;;;5278;;;;5256:30;;5269:7;5256:12;:30::i;:::-;5241:12;;;:45;:12;4730:610;-1:-1:-1;;;4730:610:82:o;3722:137::-;3840:7;;;:12;;;;3722:137::o;4381:168::-;4447:10;;:::i;:::-;-1:-1:-1;4480:62:82;;;;;;;;;-1:-1:-1;4480:62:82;;;;;;;4381:168;:::o;3426:310:75:-;3517:6;3562;3579:127;3605:16;;;;;3635:4;3579:127;3562:6;3579:12;:127::i;1732:187:124:-;1818:7;1853:12;1845:6;;;;1837:29;;;;;;;;;;;;;;;-1:-1:-1;;;1888:5:124;;;1732:187::o;3718:338::-;3804:7;3904:12;3897:5;3889:28;;;;;;;;;;;;;;;;3927:9;3943:1;3939;:5;;;;;;;3718:338;-1:-1:-1;;;;;3718:338:124:o;5132:163::-;5218:7;5253:12;5245:6;5237:29;;;;;;;;;;;;;;;;5287:1;5283;:5;;;;;;;5132:163;-1:-1:-1;;;;5132:163:124:o;1417:11178:49:-;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;-1:-1:-1;1417:11178:49;;;;;;;;:::o;:::-;;;;;;;;;-1:-1:-1;1417:11178:49;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;:::o;:::-;;;;;;;;;-1:-1:-1;1417:11178:49;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;1417:11178:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;5:130:-1:-;72:20;;97:33;72:20;97:33;;168:468;;280:4;268:9;263:3;259:19;255:30;252:2;;;298:1;295;288:12;252:2;316:20;331:4;316:20;;;307:29;-1:-1;387:1;419:49;464:3;444:9;419:49;;;394:75;;-1:-1;532:2;565:49;610:3;586:22;;;565:49;;;558:4;551:5;547:16;540:75;490:136;246:390;;;;;671:345;;795:4;783:9;778:3;774:19;770:30;767:2;;;813:1;810;803:12;767:2;831:20;846:4;831:20;;;822:29;-1:-1;902:1;934:60;990:3;970:9;934:60;;;909:86;;-1:-1;920:5;761:255;-1:-1;;761:255;1401:130;1468:20;;1493:33;1468:20;1493:33;;1538:134;1616:13;;1634:33;1616:13;1634:33;;1679:241;;1783:2;1771:9;1762:7;1758:23;1754:32;1751:2;;;1799:1;1796;1789:12;1751:2;1834:1;1851:53;1896:7;1876:9;1851:53;;1927:366;;;2048:2;2036:9;2027:7;2023:23;2019:32;2016:2;;;2064:1;2061;2054:12;2016:2;2099:1;2116:53;2161:7;2141:9;2116:53;;;2106:63;;2078:97;2206:2;2224:53;2269:7;2260:6;2249:9;2245:22;2224:53;;;2214:63;;2185:98;2010:283;;;;;;2300:287;;2427:2;2415:9;2406:7;2402:23;2398:32;2395:2;;;2443:1;2440;2433:12;2395:2;2478:1;2495:76;2563:7;2543:9;2495:76;;2594:412;;;2738:2;2726:9;2717:7;2713:23;2709:32;2706:2;;;2754:1;2751;2744:12;2706:2;2789:1;2806:76;2874:7;2854:9;2806:76;;;2796:86;;2768:120;2919:2;2937:53;2982:7;2973:6;2962:9;2958:22;2937:53;;3013:311;;3152:2;3140:9;3131:7;3127:23;3123:32;3120:2;;;3168:1;3165;3158:12;3120:2;3203:1;3220:88;3300:7;3280:9;3220:88;;3647:241;;3751:2;3739:9;3730:7;3726:23;3722:32;3719:2;;;3767:1;3764;3757:12;3719:2;3802:1;3819:53;3864:7;3844:9;3819:53;;3895:263;;4010:2;3998:9;3989:7;3985:23;3981:32;3978:2;;;4026:1;4023;4016:12;3978:2;4061:1;4078:64;4134:7;4114:9;4078:64;;4165:366;;;4286:2;4274:9;4265:7;4261:23;4257:32;4254:2;;;4302:1;4299;4292:12;4254:2;4337:1;4354:53;4399:7;4379:9;4354:53;;;4344:63;;4316:97;4444:2;4462:53;4507:7;4498:6;4487:9;4483:22;4462:53;;4539:173;;4626:46;4668:3;4660:6;4626:46;;;-1:-1;;4701:4;4692:14;;4619:93;4721:249;;4844:86;4926:3;4918:6;4844:86;;;-1:-1;;4959:4;4950:14;;4837:133;4979:249;;5102:86;5184:3;5176:6;5102:86;;5237:173;;5324:46;5366:3;5358:6;5324:46;;5418:103;5491:24;5509:5;5491:24;;;5486:3;5479:37;5473:48;;;5679:690;;5824:54;5872:5;5824:54;;;5891:86;5970:6;5965:3;5891:86;;;5884:93;;5998:56;6048:5;5998:56;;;6074:7;6102:1;6087:260;6112:6;6109:1;6106:13;6087:260;;;6179:6;6173:13;6200:63;6259:3;6244:13;6200:63;;;6193:70;;6280:60;6333:6;6280:60;;;6270:70;-1:-1;;6134:1;6127:9;6087:260;;;-1:-1;6360:3;;5803:566;-1:-1;;;;;5803:566;6426:834;;6607:72;6673:5;6607:72;;;6692:104;6789:6;6784:3;6692:104;;;6685:111;;6817:74;6885:5;6817:74;;;6911:7;6939:1;6924:314;6949:6;6946:1;6943:13;6924:314;;;7016:6;7010:13;7037:99;7132:3;7117:13;7037:99;;;7030:106;;7153:78;7224:6;7153:78;;;7143:88;-1:-1;;6971:1;6964:9;6924:314;;7317:834;;7498:72;7564:5;7498:72;;;7583:104;7680:6;7675:3;7583:104;;;7576:111;;7708:74;7776:5;7708:74;;;7802:7;7830:1;7815:314;7840:6;7837:1;7834:13;7815:314;;;7907:6;7901:13;7928:99;8023:3;8008:13;7928:99;;;7921:106;;8044:78;8115:6;8044:78;;;8034:88;-1:-1;;7862:1;7855:9;7815:314;;8190:690;;8335:54;8383:5;8335:54;;;8402:86;8481:6;8476:3;8402:86;;;8395:93;;8509:56;8559:5;8509:56;;;8585:7;8613:1;8598:260;8623:6;8620:1;8617:13;8598:260;;;8690:6;8684:13;8711:63;8770:3;8755:13;8711:63;;;8704:70;;8791:60;8844:6;8791:60;;;8781:70;-1:-1;;8645:1;8638:9;8598:260;;8888:94;8955:21;8970:5;8955:21;;9100:148;9199:43;9218:23;9235:5;9218:23;;;9199:43;;9255:148;9354:43;9373:23;9390:5;9373:23;;9410:152;9511:45;9531:24;9549:5;9531:24;;9569:356;;9697:38;9729:5;9697:38;;;9747:88;9828:6;9823:3;9747:88;;;9740:95;;9840:52;9885:6;9880:3;9873:4;9866:5;9862:16;9840:52;;;9904:16;;;;;9677:248;-1:-1;;9677:248;9932:166;10030:62;10086:5;10030:62;;10632:146;10725:47;10766:5;10725:47;;10785:347;;10897:39;10930:5;10897:39;;;10948:71;11012:6;11007:3;10948:71;;;10941:78;;11024:52;11069:6;11064:3;11057:4;11050:5;11046:16;11024:52;;;11097:29;11119:6;11097:29;;;11088:39;;;;10877:255;-1:-1;;;10877:255;11140:327;;11300:67;11364:2;11359:3;11300:67;;;11400:29;11380:50;;11458:2;11449:12;;11286:181;-1:-1;;11286:181;11476:370;;11636:67;11700:2;11695:3;11636:67;;;11736:34;11716:55;;11805:3;11800:2;11791:12;;11784:25;11837:2;11828:12;;11622:224;-1:-1;;11622:224;11903:319;12109:23;;12042:4;12033:14;;;12138:63;12037:3;12109:23;12138:63;;12643:632;12852:23;;12784:4;12775:14;;;12881:61;12779:3;12852:23;12881:61;;;12804:144;13023:4;13016:5;13012:16;13006:23;13035:61;13090:4;13085:3;13081:14;13067:12;13035:61;;;12958:144;13181:4;13174:5;13170:16;13164:23;13193:61;13248:4;13243:3;13239:14;13225:12;13193:61;;14013:1833;14225:23;;14156:6;14147:16;;;14254:63;14151:3;14225:23;14254:63;;;14178:145;14401:4;14394:5;14390:16;14384:23;14413:57;14464:4;14459:3;14455:14;14441:12;14413:57;;;14333:143;14557:4;14550:5;14546:16;14540:23;14569:57;14620:4;14615:3;14611:14;14597:12;14569:57;;;14486:146;14709:4;14702:5;14698:16;14692:23;14721:113;14828:4;14823:3;14819:14;14805:12;14721:113;;;14642:198;14914:4;14907:5;14903:16;14897:23;14926:107;15027:4;15022:3;15018:14;15004:12;14926:107;;;14850:189;15119:4;15112:5;15108:16;15102:23;15131:87;15210:6;15205:3;15201:16;15187:12;15131:87;;;15049:175;15307:4;15300:5;15296:16;15290:23;15319:90;15401:6;15396:3;15392:16;15378:12;15319:90;;;15234:181;15497:4;15490:5;15486:16;15480:23;15509:107;15608:6;15603:3;15599:16;15585:12;15509:107;;;15425:197;15704:6;15697:5;15693:18;15687:25;15718:107;15817:6;15812:3;15808:16;15794:12;15718:107;;15896:465;16099:23;;16033:4;16024:14;;;16128:57;16028:3;16099:23;16128:57;;;16053:138;16265:4;16258:5;16254:16;16248:23;16277:63;16334:4;16329:3;16325:14;16311:12;16277:63;;17688:1166;17915:23;;17839:4;17830:14;;;17944:61;17834:3;17915:23;17944:61;;;17859:152;18100:4;18093:5;18089:16;18083:23;18112:61;18167:4;18162:3;18158:14;18144:12;18112:61;;;18021:158;18263:4;18256:5;18252:16;18246:23;18275:61;18330:4;18325:3;18321:14;18307:12;18275:61;;;18189:153;18427:4;18420:5;18416:16;18410:23;18439:61;18494:4;18489:3;18485:14;18471:12;18439:61;;;18352:154;18591:4;18584:5;18580:16;18574:23;18603:61;18658:4;18653:3;18649:14;18635:12;18603:61;;;18516:154;18758:4;18751:5;18747:16;18741:23;18770:63;18827:4;18822:3;18818:14;18804:12;18770:63;;18922:1002;19146:23;;19073:4;19064:14;;;19175:105;19068:3;19146:23;19175:105;;;19093:193;19372:4;19365:5;19361:16;19355:23;19384:105;19483:4;19478:3;19474:14;19460:12;19384:105;;;19296:199;19576:4;19569:5;19565:16;19559:23;19588:105;19687:4;19682:3;19678:14;19664:12;19588:105;;;19505:194;19784:4;19777:5;19773:16;19767:23;19796:107;19897:4;19892:3;19888:14;19874:12;19796:107;;19984:484;20199:23;;20131:4;20122:14;;;20228:63;20126:3;20199:23;20228:63;;21796:465;21999:23;;21933:4;21924:14;;;22028:57;21928:3;21999:23;22028:57;;;21953:138;22165:4;22158:5;22154:16;22148:23;22177:63;22234:4;22229:3;22225:14;22211:12;22177:63;;22769:103;22842:24;22860:5;22842:24;;22879:103;22952:24;22970:5;22952:24;;23109:100;23180:23;23197:5;23180:23;;23216:100;23287:23;23304:5;23287:23;;23323:100;23394:23;23411:5;23394:23;;23430:244;;23549:75;23620:3;23611:6;23549:75;;;-1:-1;23646:2;23637:12;;23537:137;-1:-1;23537:137;23681:553;;23897:93;23986:3;23977:6;23897:93;;;23890:100;;24001:73;24070:3;24061:6;24001:73;;;24096:1;24091:3;24087:11;24080:18;;24116:93;24205:3;24196:6;24116:93;;24241:978;;24555:93;24644:3;24635:6;24555:93;;;24548:100;;24659:73;24728:3;24719:6;24659:73;;;24754:1;24749:3;24745:11;24738:18;;24774:93;24863:3;24854:6;24774:93;;;24767:100;;24878:73;24947:3;24938:6;24878:73;;;24973:1;24968:3;24964:11;24957:18;;24993:93;25082:3;25073:6;24993:93;;;24986:100;;25097:73;25166:3;25157:6;25097:73;;;-1:-1;25192:1;25183:11;;24536:683;-1:-1;;;;;;24536:683;25226:1269;;25612:93;25701:3;25692:6;25612:93;;;25605:100;;25716:73;25785:3;25776:6;25716:73;;;25811:1;25806:3;25802:11;25795:18;;25831:93;25920:3;25911:6;25831:93;;;25824:100;;25935:73;26004:3;25995:6;25935:73;;;26030:1;26025:3;26021:11;26014:18;;26050:93;26139:3;26130:6;26050:93;;;26043:100;;26154:73;26223:3;26214:6;26154:73;;;26249:1;26244:3;26240:11;26233:18;;26269:93;26358:3;26349:6;26269:93;;;26262:100;;26373:73;26442:3;26433:6;26373:73;;;-1:-1;26468:1;26459:11;;25593:902;-1:-1;;;;;;;;25593:902;26502:213;26620:2;26605:18;;26634:71;26609:9;26678:6;26634:71;;26722:435;26896:2;26881:18;;26910:71;26885:9;26954:6;26910:71;;;26992:72;27060:2;27049:9;27045:18;27036:6;26992:72;;;27075;27143:2;27132:9;27128:18;27119:6;27075:72;;27164:361;27332:2;27346:47;;;27317:18;;27407:108;27317:18;27501:6;27407:108;;27532:1283;28006:3;28021:47;;;27991:19;;28082:108;27991:19;28176:6;28082:108;;;28074:116;;28238:9;28232:4;28228:20;28223:2;28212:9;28208:18;28201:48;28263:108;28366:4;28357:6;28263:108;;;28255:116;;28419:9;28413:4;28409:20;28404:2;28393:9;28389:18;28382:48;28444:144;28583:4;28574:6;28444:144;;;28436:152;;28636:9;28630:4;28626:20;28621:2;28610:9;28606:18;28599:48;28661:144;28800:4;28791:6;28661:144;;28822:201;28934:2;28919:18;;28948:65;28923:9;28986:6;28948:65;;29030:263;29173:2;29158:18;;29187:96;29162:9;29256:6;29187:96;;29564:233;29692:2;29677:18;;29706:81;29681:9;29760:6;29706:81;;29804:301;29942:2;29956:47;;;29927:18;;30017:78;29927:18;30081:6;30017:78;;30112:407;30303:2;30317:47;;;30288:18;;30378:131;30288:18;30378:131;;30526:407;30717:2;30731:47;;;30702:18;;30792:131;30702:18;30792:131;;30940:305;31104:2;31089:18;;31118:117;31093:9;31208:6;31118:117;;31252:309;31418:2;31403:18;;31432:119;31407:9;31524:6;31432:119;;31568:314;31736:3;31721:19;;31751:121;31725:9;31845:6;31751:121;;31889:934;32283:3;32268:19;;32298:121;32272:9;32392:6;32298:121;;;32430;32546:3;32535:9;32531:19;32522:6;32430:121;;;32562;32678:3;32667:9;32663:19;32654:6;32562:121;;;32694:119;32808:3;32797:9;32793:19;32784:6;32694:119;;32830:301;32992:2;32977:18;;33006:115;32981:9;33094:6;33006:115;;33766:330;33942:3;33927:19;;33957:129;33931:9;34059:6;33957:129;;34103:330;34279:3;34264:19;;34294:129;34268:9;34396:6;34294:129;;34440:321;34612:2;34597:18;;34626:125;34601:9;34724:6;34626:125;;35084:516;35326:2;35311:18;;35340:119;35315:9;35432:6;35340:119;;;35470:120;35586:2;35575:9;35571:18;35562:6;35470:120;;35607:301;35769:2;35754:18;;35783:115;35758:9;35871:6;35783:115;;35915:213;36033:2;36018:18;;36047:71;36022:9;36091:6;36047:71;;36135:256;36197:2;36191:9;36223:17;;;36298:18;36283:34;;36319:22;;;36280:62;36277:2;;;36355:1;36352;36345:12;36277:2;36371;36364:22;36175:216;;-1:-1;36175:216;36398:151;36522:4;36513:14;;36470:79;37066:137;37169:12;;37140:63;38432:178;38550:19;;;38599:4;38590:14;;38543:67;39540:91;;39602:24;39620:5;39602:24;;39638:85;39704:13;39697:21;;39680:43;39730:144;39802:66;39791:78;;39774:100;39881:144;39953:66;39942:78;;39925:100;40032:72;40094:5;40077:27;40111:130;40185:5;40191:45;40185:5;40191:45;;40248:113;40321:34;40310:46;;40293:68;40368:121;40441:42;40430:54;;40413:76;40575:88;40647:10;40636:22;;40619:44;40670:96;40742:18;40731:30;;40714:52;40773:104;40845:26;40834:38;;40817:60;40884:171;;40988:62;41044:5;40988:62;;41511:130;;41600:36;41630:5;41600:36;;41649:268;41714:1;41721:101;41735:6;41732:1;41729:13;41721:101;;;41802:11;;;41796:18;41783:11;;;41776:39;41757:2;41750:10;41721:101;;;41837:6;41834:1;41831:13;41828:2;;;-1:-1;;41902:1;41884:16;;41877:27;41698:219;42166:97;42254:2;42234:14;42250:7;42230:28;;42214:49;42271:103;42352:1;42345:5;42342:12;42332:2;;42358:9;42381:117;42450:24;42468:5;42450:24;;;42443:5;42440:35;42430:2;;42489:1;42486;42479:12;42505:117;42574:24;42592:5;42574:24;",
|
|
1420
1420
|
"source": "/*\n\n Copyright 2019 dYdX Trading Inc.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n*/\n\npragma solidity ^0.5.7;\npragma experimental ABIEncoderV2;\n\nimport { State } from \"./State.sol\";\nimport { IInterestSetter } from \"./interfaces/IInterestSetter.sol\";\nimport { IPriceOracle } from \"./interfaces/IPriceOracle.sol\";\nimport { Account } from \"./lib/Account.sol\";\nimport { Cache } from \"./lib/Cache.sol\";\nimport { Decimal } from \"./lib/Decimal.sol\";\nimport { EnumerableSet } from \"./lib/EnumerableSet.sol\";\nimport { Interest } from \"./lib/Interest.sol\";\nimport { Monetary } from \"./lib/Monetary.sol\";\nimport { Require } from \"./lib/Require.sol\";\nimport { Storage } from \"./lib/Storage.sol\";\nimport { Token } from \"./lib/Token.sol\";\nimport { Types } from \"./lib/Types.sol\";\n\n\n/**\n * @title Getters\n * @author dYdX\n *\n * Public read-only functions that allow transparency into the state of DolomiteMargin\n */\ncontract Getters is\n State\n{\n using Cache for Cache.MarketCache;\n using Storage for Storage.State;\n using Types for Types.Par;\n using EnumerableSet for EnumerableSet.Set;\n\n // ============ Constants ============\n\n bytes32 FILE = \"Getters\";\n\n // ============ Getters for Risk ============\n\n function getMarginRatio()\n public\n view\n returns (Decimal.D256 memory)\n {\n return g_state.riskParams.marginRatio;\n }\n\n function getLiquidationSpread()\n public\n view\n returns (Decimal.D256 memory)\n {\n return g_state.riskParams.liquidationSpread;\n }\n\n function getEarningsRate()\n public\n view\n returns (Decimal.D256 memory)\n {\n return g_state.riskParams.earningsRate;\n }\n\n function getMinBorrowedValue()\n public\n view\n returns (Monetary.Value memory)\n {\n return g_state.riskParams.minBorrowedValue;\n }\n\n function getRiskParams()\n public\n view\n returns (Storage.RiskParams memory)\n {\n return g_state.riskParams;\n }\n\n function getRiskLimits()\n public\n view\n returns (Storage.RiskLimits memory)\n {\n return g_state.riskLimits;\n }\n\n // ============ Getters for Markets ============\n\n function getNumMarkets()\n public\n view\n returns (uint256)\n {\n return g_state.numMarkets;\n }\n\n function getMarketTokenAddress(\n uint256 marketId\n )\n public\n view\n returns (address)\n {\n _requireValidMarket(marketId);\n return g_state.getToken(marketId);\n }\n\n function getMarketIdByTokenAddress(\n address token\n )\n public\n view\n returns (uint256)\n {\n _requireValidToken(token);\n return g_state.tokenToMarketId[token];\n }\n\n function getMarketTotalPar(\n uint256 marketId\n )\n public\n view\n returns (Types.TotalPar memory)\n {\n _requireValidMarket(marketId);\n return g_state.getTotalPar(marketId);\n }\n\n function getMarketCachedIndex(\n uint256 marketId\n )\n public\n view\n returns (Interest.Index memory)\n {\n _requireValidMarket(marketId);\n return g_state.getIndex(marketId);\n }\n\n function getMarketCurrentIndex(\n uint256 marketId\n )\n public\n view\n returns (Interest.Index memory)\n {\n _requireValidMarket(marketId);\n return g_state.fetchNewIndex(marketId, g_state.getIndex(marketId));\n }\n\n function getMarketPriceOracle(\n uint256 marketId\n )\n public\n view\n returns (IPriceOracle)\n {\n _requireValidMarket(marketId);\n return g_state.markets[marketId].priceOracle;\n }\n\n function getMarketInterestSetter(\n uint256 marketId\n )\n public\n view\n returns (IInterestSetter)\n {\n _requireValidMarket(marketId);\n return g_state.markets[marketId].interestSetter;\n }\n\n function getMarketMarginPremium(\n uint256 marketId\n )\n public\n view\n returns (Decimal.D256 memory)\n {\n _requireValidMarket(marketId);\n return g_state.markets[marketId].marginPremium;\n }\n\n function getMarketSpreadPremium(\n uint256 marketId\n )\n public\n view\n returns (Decimal.D256 memory)\n {\n _requireValidMarket(marketId);\n return g_state.markets[marketId].spreadPremium;\n }\n\n function getMarketIsClosing(\n uint256 marketId\n )\n public\n view\n returns (bool)\n {\n _requireValidMarket(marketId);\n return g_state.markets[marketId].isClosing;\n }\n\n function getMarketIsRecyclable(\n uint256 marketId\n )\n public\n view\n returns (bool)\n {\n _requireValidMarket(marketId);\n return g_state.markets[marketId].isRecyclable;\n }\n\n function getRecyclableMarkets(\n uint256 n\n )\n public\n view\n returns (uint[] memory)\n {\n uint counter = 0;\n uint[] memory markets = new uint[](n);\n uint pointer = g_state.recycledMarketIds[uint(-1)]; // uint(-1) is the HEAD_POINTER\n while (pointer != 0 && counter < n) {\n markets[counter++] = pointer;\n pointer = g_state.recycledMarketIds[pointer];\n }\n return markets;\n }\n\n function getMarketPrice(\n uint256 marketId\n )\n public\n view\n returns (Monetary.Price memory)\n {\n _requireValidMarket(marketId);\n return g_state.fetchPrice(marketId, g_state.getToken(marketId));\n }\n\n function getMarketInterestRate(\n uint256 marketId\n )\n public\n view\n returns (Interest.Rate memory)\n {\n _requireValidMarket(marketId);\n return g_state.fetchInterestRate(\n marketId,\n g_state.getIndex(marketId)\n );\n }\n\n function getLiquidationSpreadForPair(\n uint256 heldMarketId,\n uint256 owedMarketId\n )\n public\n view\n returns (Decimal.D256 memory)\n {\n _requireValidMarket(heldMarketId);\n _requireValidMarket(owedMarketId);\n return g_state.getLiquidationSpreadForPair(heldMarketId, owedMarketId);\n }\n\n function getMarket(\n uint256 marketId\n )\n public\n view\n returns (Storage.Market memory)\n {\n _requireValidMarket(marketId);\n return g_state.markets[marketId];\n }\n\n function getMarketWithInfo(\n uint256 marketId\n )\n public\n view\n returns (\n Storage.Market memory,\n Interest.Index memory,\n Monetary.Price memory,\n Interest.Rate memory\n )\n {\n _requireValidMarket(marketId);\n return (\n getMarket(marketId),\n getMarketCurrentIndex(marketId),\n getMarketPrice(marketId),\n getMarketInterestRate(marketId)\n );\n }\n\n function getNumExcessTokens(\n uint256 marketId\n )\n public\n view\n returns (Types.Wei memory)\n {\n _requireValidMarket(marketId);\n return g_state.getNumExcessTokens(marketId);\n }\n\n function getAccountPar(\n Account.Info memory account,\n uint256 marketId\n )\n public\n view\n returns (Types.Par memory)\n {\n _requireValidMarket(marketId);\n return g_state.getPar(account, marketId);\n }\n\n function getAccountParNoMarketCheck(\n Account.Info memory account,\n uint256 marketId\n )\n public\n view\n returns (Types.Par memory)\n {\n return g_state.getPar(account, marketId);\n }\n\n function getAccountWei(\n Account.Info memory account,\n uint256 marketId\n )\n public\n view\n returns (Types.Wei memory)\n {\n _requireValidMarket(marketId);\n return Interest.parToWei(\n g_state.getPar(account, marketId),\n g_state.fetchNewIndex(marketId, g_state.getIndex(marketId))\n );\n }\n\n function getAccountStatus(\n Account.Info memory account\n )\n public\n view\n returns (Account.Status)\n {\n return g_state.getStatus(account);\n }\n\n function getAccountMarketsWithNonZeroBalances(\n Account.Info memory account\n )\n public\n view\n returns (uint256[] memory)\n {\n return g_state.getMarketsWithBalances(account);\n }\n\n function getNumberOfMarketsWithBorrow(\n Account.Info memory account\n )\n public\n view\n returns (uint256)\n {\n return g_state.getNumberOfMarketsWithBorrow(account);\n }\n\n function getAccountValues(\n Account.Info memory account\n )\n public\n view\n returns (Monetary.Value memory, Monetary.Value memory)\n {\n return _getAccountValuesInternal(account, /* adjustForLiquidity = */ false);\n }\n\n function getAdjustedAccountValues(\n Account.Info memory account\n )\n public\n view\n returns (Monetary.Value memory, Monetary.Value memory)\n {\n return _getAccountValuesInternal(account, /* adjustForLiquidity = */ true);\n }\n\n function getAccountBalances(\n Account.Info memory account\n )\n public\n view\n returns (\n uint[] memory,\n address[] memory,\n Types.Par[] memory,\n Types.Wei[] memory\n )\n {\n uint256[] memory markets = g_state.getMarketsWithBalances(account);\n address[] memory tokens = new address[](markets.length);\n Types.Par[] memory pars = new Types.Par[](markets.length);\n Types.Wei[] memory weis = new Types.Wei[](markets.length);\n\n for (uint256 i = 0; i < markets.length; i++) {\n tokens[i] = getMarketTokenAddress(markets[i]);\n pars[i] = getAccountPar(account, markets[i]);\n weis[i] = getAccountWei(account, markets[i]);\n }\n\n return (\n markets,\n tokens,\n pars,\n weis\n );\n }\n\n function getIsLocalOperator(\n address owner,\n address operator\n )\n public\n view\n returns (bool)\n {\n return g_state.isLocalOperator(owner, operator);\n }\n\n function getIsGlobalOperator(\n address operator\n )\n public\n view\n returns (bool)\n {\n return g_state.isGlobalOperator(operator);\n }\n\n function getIsAutoTraderSpecial(\n address autoTrader\n )\n public\n view\n returns (bool)\n {\n return g_state.isAutoTraderSpecial(autoTrader);\n }\n\n // ============ Internal/Private Helper Functions ============\n\n /**\n * Revert if marketId is invalid.\n */\n function _requireValidMarket(\n uint256 marketId\n )\n internal\n view\n {\n Require.that(\n marketId < g_state.numMarkets && g_state.markets[marketId].token != address(0),\n FILE,\n \"Invalid market\"\n );\n }\n\n function _requireValidToken(\n address token\n )\n private\n view\n {\n Require.that(\n token == g_state.markets[g_state.tokenToMarketId[token]].token,\n FILE,\n \"Invalid token\"\n );\n }\n\n /**\n * Private helper for getting the monetary values of an account.\n */\n function _getAccountValuesInternal(\n Account.Info memory account,\n bool adjustForLiquidity\n )\n private\n view\n returns (Monetary.Value memory, Monetary.Value memory)\n {\n uint256[] memory markets = g_state.getMarketsWithBalances(account);\n\n // populate cache\n Cache.MarketCache memory cache = Cache.create(markets.length);\n for (uint256 i = 0; i < markets.length; i++) {\n cache.set(markets[i]);\n }\n g_state.initializeCache(cache);\n\n return g_state.getAccountValues(account, cache, adjustForLiquidity);\n }\n}\n",
|
|
1421
|
-
"sourcePath": "/
|
|
1421
|
+
"sourcePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/Getters.sol",
|
|
1422
1422
|
"ast": {
|
|
1423
|
-
"absolutePath": "/
|
|
1423
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/Getters.sol",
|
|
1424
1424
|
"exportedSymbols": {
|
|
1425
1425
|
"Getters": [
|
|
1426
1426
|
23776
|
|
@@ -1450,7 +1450,7 @@
|
|
|
1450
1450
|
"src": "627:33:49"
|
|
1451
1451
|
},
|
|
1452
1452
|
{
|
|
1453
|
-
"absolutePath": "/
|
|
1453
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/State.sol",
|
|
1454
1454
|
"file": "./State.sol",
|
|
1455
1455
|
"id": 22873,
|
|
1456
1456
|
"nodeType": "ImportDirective",
|
|
@@ -1466,7 +1466,7 @@
|
|
|
1466
1466
|
"unitAlias": ""
|
|
1467
1467
|
},
|
|
1468
1468
|
{
|
|
1469
|
-
"absolutePath": "/
|
|
1469
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/interfaces/IInterestSetter.sol",
|
|
1470
1470
|
"file": "./interfaces/IInterestSetter.sol",
|
|
1471
1471
|
"id": 22875,
|
|
1472
1472
|
"nodeType": "ImportDirective",
|
|
@@ -1482,7 +1482,7 @@
|
|
|
1482
1482
|
"unitAlias": ""
|
|
1483
1483
|
},
|
|
1484
1484
|
{
|
|
1485
|
-
"absolutePath": "/
|
|
1485
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/interfaces/IPriceOracle.sol",
|
|
1486
1486
|
"file": "./interfaces/IPriceOracle.sol",
|
|
1487
1487
|
"id": 22877,
|
|
1488
1488
|
"nodeType": "ImportDirective",
|
|
@@ -1498,7 +1498,7 @@
|
|
|
1498
1498
|
"unitAlias": ""
|
|
1499
1499
|
},
|
|
1500
1500
|
{
|
|
1501
|
-
"absolutePath": "/
|
|
1501
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Account.sol",
|
|
1502
1502
|
"file": "./lib/Account.sol",
|
|
1503
1503
|
"id": 22879,
|
|
1504
1504
|
"nodeType": "ImportDirective",
|
|
@@ -1514,7 +1514,7 @@
|
|
|
1514
1514
|
"unitAlias": ""
|
|
1515
1515
|
},
|
|
1516
1516
|
{
|
|
1517
|
-
"absolutePath": "/
|
|
1517
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Cache.sol",
|
|
1518
1518
|
"file": "./lib/Cache.sol",
|
|
1519
1519
|
"id": 22881,
|
|
1520
1520
|
"nodeType": "ImportDirective",
|
|
@@ -1530,7 +1530,7 @@
|
|
|
1530
1530
|
"unitAlias": ""
|
|
1531
1531
|
},
|
|
1532
1532
|
{
|
|
1533
|
-
"absolutePath": "/
|
|
1533
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Decimal.sol",
|
|
1534
1534
|
"file": "./lib/Decimal.sol",
|
|
1535
1535
|
"id": 22883,
|
|
1536
1536
|
"nodeType": "ImportDirective",
|
|
@@ -1546,7 +1546,7 @@
|
|
|
1546
1546
|
"unitAlias": ""
|
|
1547
1547
|
},
|
|
1548
1548
|
{
|
|
1549
|
-
"absolutePath": "/
|
|
1549
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/EnumerableSet.sol",
|
|
1550
1550
|
"file": "./lib/EnumerableSet.sol",
|
|
1551
1551
|
"id": 22885,
|
|
1552
1552
|
"nodeType": "ImportDirective",
|
|
@@ -1562,7 +1562,7 @@
|
|
|
1562
1562
|
"unitAlias": ""
|
|
1563
1563
|
},
|
|
1564
1564
|
{
|
|
1565
|
-
"absolutePath": "/
|
|
1565
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Interest.sol",
|
|
1566
1566
|
"file": "./lib/Interest.sol",
|
|
1567
1567
|
"id": 22887,
|
|
1568
1568
|
"nodeType": "ImportDirective",
|
|
@@ -1578,7 +1578,7 @@
|
|
|
1578
1578
|
"unitAlias": ""
|
|
1579
1579
|
},
|
|
1580
1580
|
{
|
|
1581
|
-
"absolutePath": "/
|
|
1581
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Monetary.sol",
|
|
1582
1582
|
"file": "./lib/Monetary.sol",
|
|
1583
1583
|
"id": 22889,
|
|
1584
1584
|
"nodeType": "ImportDirective",
|
|
@@ -1594,7 +1594,7 @@
|
|
|
1594
1594
|
"unitAlias": ""
|
|
1595
1595
|
},
|
|
1596
1596
|
{
|
|
1597
|
-
"absolutePath": "/
|
|
1597
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Require.sol",
|
|
1598
1598
|
"file": "./lib/Require.sol",
|
|
1599
1599
|
"id": 22891,
|
|
1600
1600
|
"nodeType": "ImportDirective",
|
|
@@ -1610,7 +1610,7 @@
|
|
|
1610
1610
|
"unitAlias": ""
|
|
1611
1611
|
},
|
|
1612
1612
|
{
|
|
1613
|
-
"absolutePath": "/
|
|
1613
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Storage.sol",
|
|
1614
1614
|
"file": "./lib/Storage.sol",
|
|
1615
1615
|
"id": 22893,
|
|
1616
1616
|
"nodeType": "ImportDirective",
|
|
@@ -1626,7 +1626,7 @@
|
|
|
1626
1626
|
"unitAlias": ""
|
|
1627
1627
|
},
|
|
1628
1628
|
{
|
|
1629
|
-
"absolutePath": "/
|
|
1629
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Token.sol",
|
|
1630
1630
|
"file": "./lib/Token.sol",
|
|
1631
1631
|
"id": 22895,
|
|
1632
1632
|
"nodeType": "ImportDirective",
|
|
@@ -1642,7 +1642,7 @@
|
|
|
1642
1642
|
"unitAlias": ""
|
|
1643
1643
|
},
|
|
1644
1644
|
{
|
|
1645
|
-
"absolutePath": "/
|
|
1645
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Types.sol",
|
|
1646
1646
|
"file": "./lib/Types.sol",
|
|
1647
1647
|
"id": 22897,
|
|
1648
1648
|
"nodeType": "ImportDirective",
|
|
@@ -12752,7 +12752,7 @@
|
|
|
12752
12752
|
"src": "603:11993:49"
|
|
12753
12753
|
},
|
|
12754
12754
|
"legacyAST": {
|
|
12755
|
-
"absolutePath": "/
|
|
12755
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/Getters.sol",
|
|
12756
12756
|
"exportedSymbols": {
|
|
12757
12757
|
"Getters": [
|
|
12758
12758
|
23776
|
|
@@ -12782,7 +12782,7 @@
|
|
|
12782
12782
|
"src": "627:33:49"
|
|
12783
12783
|
},
|
|
12784
12784
|
{
|
|
12785
|
-
"absolutePath": "/
|
|
12785
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/State.sol",
|
|
12786
12786
|
"file": "./State.sol",
|
|
12787
12787
|
"id": 22873,
|
|
12788
12788
|
"nodeType": "ImportDirective",
|
|
@@ -12798,7 +12798,7 @@
|
|
|
12798
12798
|
"unitAlias": ""
|
|
12799
12799
|
},
|
|
12800
12800
|
{
|
|
12801
|
-
"absolutePath": "/
|
|
12801
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/interfaces/IInterestSetter.sol",
|
|
12802
12802
|
"file": "./interfaces/IInterestSetter.sol",
|
|
12803
12803
|
"id": 22875,
|
|
12804
12804
|
"nodeType": "ImportDirective",
|
|
@@ -12814,7 +12814,7 @@
|
|
|
12814
12814
|
"unitAlias": ""
|
|
12815
12815
|
},
|
|
12816
12816
|
{
|
|
12817
|
-
"absolutePath": "/
|
|
12817
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/interfaces/IPriceOracle.sol",
|
|
12818
12818
|
"file": "./interfaces/IPriceOracle.sol",
|
|
12819
12819
|
"id": 22877,
|
|
12820
12820
|
"nodeType": "ImportDirective",
|
|
@@ -12830,7 +12830,7 @@
|
|
|
12830
12830
|
"unitAlias": ""
|
|
12831
12831
|
},
|
|
12832
12832
|
{
|
|
12833
|
-
"absolutePath": "/
|
|
12833
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Account.sol",
|
|
12834
12834
|
"file": "./lib/Account.sol",
|
|
12835
12835
|
"id": 22879,
|
|
12836
12836
|
"nodeType": "ImportDirective",
|
|
@@ -12846,7 +12846,7 @@
|
|
|
12846
12846
|
"unitAlias": ""
|
|
12847
12847
|
},
|
|
12848
12848
|
{
|
|
12849
|
-
"absolutePath": "/
|
|
12849
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Cache.sol",
|
|
12850
12850
|
"file": "./lib/Cache.sol",
|
|
12851
12851
|
"id": 22881,
|
|
12852
12852
|
"nodeType": "ImportDirective",
|
|
@@ -12862,7 +12862,7 @@
|
|
|
12862
12862
|
"unitAlias": ""
|
|
12863
12863
|
},
|
|
12864
12864
|
{
|
|
12865
|
-
"absolutePath": "/
|
|
12865
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Decimal.sol",
|
|
12866
12866
|
"file": "./lib/Decimal.sol",
|
|
12867
12867
|
"id": 22883,
|
|
12868
12868
|
"nodeType": "ImportDirective",
|
|
@@ -12878,7 +12878,7 @@
|
|
|
12878
12878
|
"unitAlias": ""
|
|
12879
12879
|
},
|
|
12880
12880
|
{
|
|
12881
|
-
"absolutePath": "/
|
|
12881
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/EnumerableSet.sol",
|
|
12882
12882
|
"file": "./lib/EnumerableSet.sol",
|
|
12883
12883
|
"id": 22885,
|
|
12884
12884
|
"nodeType": "ImportDirective",
|
|
@@ -12894,7 +12894,7 @@
|
|
|
12894
12894
|
"unitAlias": ""
|
|
12895
12895
|
},
|
|
12896
12896
|
{
|
|
12897
|
-
"absolutePath": "/
|
|
12897
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Interest.sol",
|
|
12898
12898
|
"file": "./lib/Interest.sol",
|
|
12899
12899
|
"id": 22887,
|
|
12900
12900
|
"nodeType": "ImportDirective",
|
|
@@ -12910,7 +12910,7 @@
|
|
|
12910
12910
|
"unitAlias": ""
|
|
12911
12911
|
},
|
|
12912
12912
|
{
|
|
12913
|
-
"absolutePath": "/
|
|
12913
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Monetary.sol",
|
|
12914
12914
|
"file": "./lib/Monetary.sol",
|
|
12915
12915
|
"id": 22889,
|
|
12916
12916
|
"nodeType": "ImportDirective",
|
|
@@ -12926,7 +12926,7 @@
|
|
|
12926
12926
|
"unitAlias": ""
|
|
12927
12927
|
},
|
|
12928
12928
|
{
|
|
12929
|
-
"absolutePath": "/
|
|
12929
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Require.sol",
|
|
12930
12930
|
"file": "./lib/Require.sol",
|
|
12931
12931
|
"id": 22891,
|
|
12932
12932
|
"nodeType": "ImportDirective",
|
|
@@ -12942,7 +12942,7 @@
|
|
|
12942
12942
|
"unitAlias": ""
|
|
12943
12943
|
},
|
|
12944
12944
|
{
|
|
12945
|
-
"absolutePath": "/
|
|
12945
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Storage.sol",
|
|
12946
12946
|
"file": "./lib/Storage.sol",
|
|
12947
12947
|
"id": 22893,
|
|
12948
12948
|
"nodeType": "ImportDirective",
|
|
@@ -12958,7 +12958,7 @@
|
|
|
12958
12958
|
"unitAlias": ""
|
|
12959
12959
|
},
|
|
12960
12960
|
{
|
|
12961
|
-
"absolutePath": "/
|
|
12961
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Token.sol",
|
|
12962
12962
|
"file": "./lib/Token.sol",
|
|
12963
12963
|
"id": 22895,
|
|
12964
12964
|
"nodeType": "ImportDirective",
|
|
@@ -12974,7 +12974,7 @@
|
|
|
12974
12974
|
"unitAlias": ""
|
|
12975
12975
|
},
|
|
12976
12976
|
{
|
|
12977
|
-
"absolutePath": "/
|
|
12977
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/protocol/lib/Types.sol",
|
|
12978
12978
|
"file": "./lib/Types.sol",
|
|
12979
12979
|
"id": 22897,
|
|
12980
12980
|
"nodeType": "ImportDirective",
|
|
@@ -24089,7 +24089,7 @@
|
|
|
24089
24089
|
},
|
|
24090
24090
|
"networks": {},
|
|
24091
24091
|
"schemaVersion": "3.0.23",
|
|
24092
|
-
"updatedAt": "2022-02-
|
|
24092
|
+
"updatedAt": "2022-02-07T07:18:45.180Z",
|
|
24093
24093
|
"devdoc": {
|
|
24094
24094
|
"author": "dYdX * Public read-only functions that allow transparency into the state of DolomiteMargin",
|
|
24095
24095
|
"methods": {},
|