@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
|
@@ -344,15 +344,15 @@
|
|
|
344
344
|
"type": "function"
|
|
345
345
|
}
|
|
346
346
|
],
|
|
347
|
-
"metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"constant\":true,\"inputs\":[],\"name\":\"DOMAIN_SEPARATOR\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"PERMIT_TYPEHASH\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"nonces\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"permit\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/
|
|
348
|
-
"bytecode": "
|
|
349
|
-
"deployedBytecode": "
|
|
347
|
+
"metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"constant\":true,\"inputs\":[],\"name\":\"DOMAIN_SEPARATOR\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"PERMIT_TYPEHASH\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"nonces\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"permit\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/external/uniswap-v2/UniswapV2ERC20.sol\":\"UniswapV2ERC20\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/external/uniswap-v2/UniswapV2ERC20.sol\":{\"keccak256\":\"0xb39cd0553ef5cf1e768c65378612436d6309be18a2d94d68277339b2087af5dc\",\"urls\":[\"bzz-raw://d1428077b6d0e7b28ca9e01c7cf7992a4e376a4ee201d927130a7ec678ee8123\",\"dweb:/ipfs/QmXW2Z9G8PgmJqDV3gJmjgdnqoGCHSDByeQ4jdL2pb6nWc\"]},\"@openzeppelin/contracts/math/SafeMath.sol\":{\"keccak256\":\"0x640b6dee7a4b830bdfd52b5031a07fc2b12209f5b2e29e5d364a7d37f69d8076\",\"urls\":[\"bzz-raw://31113152e1ddb78fe7a4197f247591ca894e93f916867beb708d8e747b6cc74f\",\"dweb:/ipfs/QmbZaJyXdpsYGykVhHH9qpVGQg9DGCxE2QufbCUy3daTgq\"]}},\"version\":1}",
|
|
348
|
+
"bytecode": "0x608060405234801561001057600080fd5b506040514690806052610c128239604080519182900360520182208282018252600a8352692ab734b9bbb0b8102b1960b11b6020938401528151808301835260018152603160f81b908401528151808401919091527fbfcc8ef98ffbf7b6c3fec7bf5185b566b9863e35a9d83acd49ad6824b5969738818301527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc6606082015260808101949094523060a0808601919091528151808603909101815260c09094019052825192019190912060035550610b24806100ee6000396000f3fe608060405234801561001057600080fd5b50600436106100df5760003560e01c80633644e5151161008c57806395d89b411161006657806395d89b411461029f578063a9059cbb146102a7578063d505accf146102e0578063dd62ed3e14610340576100df565b80633644e5151461023157806370a08231146102395780637ecebe001461026c576100df565b806323b872dd116100bd57806323b872dd146101c857806330adf81f1461020b578063313ce56714610213576100df565b806306fdde03146100e4578063095ea7b31461016157806318160ddd146101ae575b600080fd5b6100ec61037b565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561012657818101518382015260200161010e565b50505050905090810190601f1680156101535780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61019a6004803603604081101561017757600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81351690602001356103b4565b604080519115158252519081900360200190f35b6101b66103ca565b60408051918252519081900360200190f35b61019a600480360360608110156101de57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff8135811691602081013590911690604001356103d0565b6101b66104af565b61021b6104d3565b6040805160ff9092168252519081900360200190f35b6101b66104d8565b6101b66004803603602081101561024f57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166104de565b6101b66004803603602081101561028257600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166104f0565b6100ec610502565b61019a600480360360408110156102bd57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813516906020013561053b565b61033e600480360360e08110156102f657600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813581169160208101359091169060408101359060608101359060ff6080820135169060a08101359060c00135610548565b005b6101b66004803603604081101561035657600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81358116916020013516610814565b6040518060400160405280600a81526020017f556e69737761702056320000000000000000000000000000000000000000000081525081565b60006103c1338484610831565b50600192915050565b60005481565b73ffffffffffffffffffffffffffffffffffffffff831660009081526002602090815260408083203384529091528120547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1461049a5773ffffffffffffffffffffffffffffffffffffffff84166000908152600260209081526040808320338452909152902054610468908363ffffffff6108a016565b73ffffffffffffffffffffffffffffffffffffffff851660009081526002602090815260408083203384529091529020555b6104a58484846108e9565b5060019392505050565b7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b601281565b60035481565b60016020526000908152604090205481565b60046020526000908152604090205481565b6040518060400160405280600681526020017f554e492d5632000000000000000000000000000000000000000000000000000081525081565b60006103c13384846108e9565b428410156105b757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f556e697377617056323a20455850495245440000000000000000000000000000604482015290519081900360640190fd5b60035473ffffffffffffffffffffffffffffffffffffffff80891660008181526004602090815260408083208054600180820190925582517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98186015280840196909652958d166060860152608085018c905260a085019590955260c08085018b90528151808603909101815260e0850182528051908301207f19010000000000000000000000000000000000000000000000000000000000006101008601526101028501969096526101228085019690965280518085039096018652610142840180825286519683019690962095839052610162840180825286905260ff89166101828501526101a284018890526101c28401879052519193926101e2808201937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081019281900390910190855afa158015610718573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff81161580159061079357508873ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b6107fe57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f556e697377617056323a20494e56414c49445f5349474e415455524500000000604482015290519081900360640190fd5b610809898989610831565b505050505050505050565b600260209081526000928352604080842090915290825290205481565b73ffffffffffffffffffffffffffffffffffffffff808416600081815260026020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b60006108e283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506109ca565b9392505050565b73ffffffffffffffffffffffffffffffffffffffff831660009081526001602052604090205461091f908263ffffffff6108a016565b73ffffffffffffffffffffffffffffffffffffffff8085166000908152600160205260408082209390935590841681522054610961908263ffffffff610a7b16565b73ffffffffffffffffffffffffffffffffffffffff80841660008181526001602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610a73576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610a38578181015183820152602001610a20565b50505050905090810190601f168015610a655780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000828201838110156108e257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fdfea265627a7a7231582027aba2837227b076f3ee3eb1692edc3081535e2c70d3b1bf5516716703b1912d64736f6c63430005100032454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e747261637429",
|
|
349
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100df5760003560e01c80633644e5151161008c57806395d89b411161006657806395d89b411461029f578063a9059cbb146102a7578063d505accf146102e0578063dd62ed3e14610340576100df565b80633644e5151461023157806370a08231146102395780637ecebe001461026c576100df565b806323b872dd116100bd57806323b872dd146101c857806330adf81f1461020b578063313ce56714610213576100df565b806306fdde03146100e4578063095ea7b31461016157806318160ddd146101ae575b600080fd5b6100ec61037b565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561012657818101518382015260200161010e565b50505050905090810190601f1680156101535780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61019a6004803603604081101561017757600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81351690602001356103b4565b604080519115158252519081900360200190f35b6101b66103ca565b60408051918252519081900360200190f35b61019a600480360360608110156101de57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff8135811691602081013590911690604001356103d0565b6101b66104af565b61021b6104d3565b6040805160ff9092168252519081900360200190f35b6101b66104d8565b6101b66004803603602081101561024f57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166104de565b6101b66004803603602081101561028257600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166104f0565b6100ec610502565b61019a600480360360408110156102bd57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813516906020013561053b565b61033e600480360360e08110156102f657600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813581169160208101359091169060408101359060608101359060ff6080820135169060a08101359060c00135610548565b005b6101b66004803603604081101561035657600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81358116916020013516610814565b6040518060400160405280600a81526020017f556e69737761702056320000000000000000000000000000000000000000000081525081565b60006103c1338484610831565b50600192915050565b60005481565b73ffffffffffffffffffffffffffffffffffffffff831660009081526002602090815260408083203384529091528120547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1461049a5773ffffffffffffffffffffffffffffffffffffffff84166000908152600260209081526040808320338452909152902054610468908363ffffffff6108a016565b73ffffffffffffffffffffffffffffffffffffffff851660009081526002602090815260408083203384529091529020555b6104a58484846108e9565b5060019392505050565b7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b601281565b60035481565b60016020526000908152604090205481565b60046020526000908152604090205481565b6040518060400160405280600681526020017f554e492d5632000000000000000000000000000000000000000000000000000081525081565b60006103c13384846108e9565b428410156105b757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f556e697377617056323a20455850495245440000000000000000000000000000604482015290519081900360640190fd5b60035473ffffffffffffffffffffffffffffffffffffffff80891660008181526004602090815260408083208054600180820190925582517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98186015280840196909652958d166060860152608085018c905260a085019590955260c08085018b90528151808603909101815260e0850182528051908301207f19010000000000000000000000000000000000000000000000000000000000006101008601526101028501969096526101228085019690965280518085039096018652610142840180825286519683019690962095839052610162840180825286905260ff89166101828501526101a284018890526101c28401879052519193926101e2808201937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081019281900390910190855afa158015610718573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff81161580159061079357508873ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b6107fe57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f556e697377617056323a20494e56414c49445f5349474e415455524500000000604482015290519081900360640190fd5b610809898989610831565b505050505050505050565b600260209081526000928352604080842090915290825290205481565b73ffffffffffffffffffffffffffffffffffffffff808416600081815260026020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b60006108e283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506109ca565b9392505050565b73ffffffffffffffffffffffffffffffffffffffff831660009081526001602052604090205461091f908263ffffffff6108a016565b73ffffffffffffffffffffffffffffffffffffffff8085166000908152600160205260408082209390935590841681522054610961908263ffffffff610a7b16565b73ffffffffffffffffffffffffffffffffffffffff80841660008181526001602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610a73576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610a38578181015183820152602001610a20565b50505050905090810190601f168015610a655780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000828201838110156108e257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fdfea265627a7a7231582027aba2837227b076f3ee3eb1692edc3081535e2c70d3b1bf5516716703b1912d64736f6c63430005100032",
|
|
350
350
|
"sourceMap": "80:3829:36:-;;;1001:510;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1250:95:36;;1152:9;;1250:95;;;;;;;;;;;;;;;;1379:4;;;;;;;;-1:-1:-1;;;1379:4:36;;;;;1413:10;;;;;;;;;;-1:-1:-1;;;1413:10:36;;;;1222:272;;;;;;;;;1363:22;1222:272;;;;1403:21;1222:272;;;;;;;;;;;1475:4;1222:272;;;;;;;;;;26:21:-1;;;22:32;;;6:49;;1222:272:36;;;;;;1199:305;;;;;;;;1180:16;:324;-1:-1:-1;80:3829:36;;;;;;",
|
|
351
351
|
"deployedSourceMap": "80:3829:36:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;80:3829:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;182:42;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;182:42:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1517:144;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1517:144:36;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;401:24;;;:::i;:::-;;;;;;;;;;;;;;;;1809:295;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1809:295:36;;;;;;;;;;;;;;;;;;:::i;687:108::-;;;:::i;360:35::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;546:31;;;:::i;431:41::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;431:41:36;;;;:::i;801:38::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;801:38:36;;;;:::i;272:40::-;;;:::i;1667:136::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1667:136:36;;;;;;;;;:::i;2110:989::-;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;-1:-1;2110:989:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;478:61;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;478:61:36;;;;;;;;;;;:::i;182:42::-;;;;;;;;;;;;;;;;;;;:::o;1517:144::-;1581:4;1597:36;1606:10;1618:7;1627:5;1597:8;:36::i;:::-;-1:-1:-1;1650:4:36;1517:144;;;;:::o;401:24::-;;;;:::o;1809:295::-;1907:15;;;1887:4;1907:15;;;:9;:15;;;;;;;;1923:10;1907:27;;;;;;;;1943:2;1907:39;1903:138;;1992:15;;;;;;;:9;:15;;;;;;;;2008:10;1992:27;;;;;;;;:38;;2024:5;1992:38;:31;:38;:::i;:::-;1962:15;;;;;;;:9;:15;;;;;;;;1978:10;1962:27;;;;;;;:68;1903:138;2050:26;2060:4;2066:2;2070:5;2050:9;:26::i;:::-;-1:-1:-1;2093:4:36;1809:295;;;;;:::o;687:108::-;729:66;687:108;:::o;360:35::-;393:2;360:35;:::o;546:31::-;;;;:::o;431:41::-;;;;;;;;;;;;;:::o;801:38::-;;;;;;;;;;;;;:::o;272:40::-;;;;;;;;;;;;;;;;;;;:::o;1667:136::-;1727:4;1743:32;1753:10;1765:2;1769:5;1743:9;:32::i;2110:989::-;2329:15;2317:8;:27;;2309:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2479:16;;2716:13;;;;2377:14;2716:13;;;:6;:13;;;;;;;;:15;;;;;;;;;2544:243;;729:66;2544:243;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26:21:-1;;;22:32;;;6:49;;2544:243:36;;;;;2513:292;;;;;;2417:402;;;;;;;;;;;;;;;;;;;;;;26:21:-1;;;22:32;;;6:49;;2417:402:36;;;;;;2394:435;;;;;;;;;2915:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2377:14;;2716:15;2915:26;;;;;-1:-1:-1;2915:26:36;;;;;;;;;;2716:15;2915:26;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;2915:26:36;;;;;;-1:-1:-1;;2959:30:36;;;;;;;:59;;;3013:5;2993:25;;:16;:25;;;2959:59;2951:100;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3061:31;3070:5;3077:7;3086:5;3061:8;:31::i;:::-;2110:989;;;;;;;;;:::o;478:61::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;3519:166::-;3599:16;;;;;;;;:9;:16;;;;;;;;:25;;;;;;;;;;;;;:33;;;3647:31;;;;;;;;;;;;;;;;;3519:166;;;:::o;1274:134:124:-;1332:7;1358:43;1362:1;1365;1358:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1351:50;1274:134;-1:-1:-1;;;1274:134:124:o;3691:216:36:-;3784:15;;;;;;;:9;:15;;;;;;:26;;3804:5;3784:26;:19;:26;:::i;:::-;3766:15;;;;;;;;:9;:15;;;;;;:44;;;;3836:13;;;;;;;:24;;3854:5;3836:24;:17;:24;:::i;:::-;3820:13;;;;;;;;:9;:13;;;;;;;;;:40;;;;3875:25;;;;;;;3820:13;;3875:25;;;;;;;;;;;;;3691:216;;;:::o;1732:187:124:-;1818:7;1853:12;1845:6;;;;1837:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;1837:29:124;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1888:5:124;;;1732:187::o;834:176::-;892:7;923:5;;;946:6;;;;938:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;",
|
|
352
352
|
"source": "pragma solidity ^0.5.16;\n\nimport \"@openzeppelin/contracts/math/SafeMath.sol\";\n\n\ncontract UniswapV2ERC20 {\n using SafeMath for uint;\n\n // solium-disable-next-line uppercase\n string public constant name = \"Uniswap V2\";\n // solium-disable-next-line uppercase\n string public constant symbol = \"UNI-V2\";\n // solium-disable-next-line uppercase\n uint8 public constant decimals = 18;\n uint public totalSupply;\n mapping(address => uint) public balanceOf;\n mapping(address => mapping(address => uint)) public allowance;\n\n bytes32 public DOMAIN_SEPARATOR;\n // keccak256(\"Permit(address owner,address spender,uint256 value,uint256 nonce,uint256 deadline)\");\n bytes32 public constant PERMIT_TYPEHASH = 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9;\n mapping(address => uint) public nonces;\n\n event Approval(address indexed owner, address indexed spender, uint value);\n event Transfer(address indexed from, address indexed to, uint value);\n\n constructor() public {\n uint chainId;\n // solium-disable-next-line security/no-inline-assembly\n assembly {\n chainId := chainid()\n }\n DOMAIN_SEPARATOR = keccak256(\n abi.encode(\n keccak256(\"EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)\"),\n keccak256(bytes(name)),\n keccak256(bytes(\"1\")),\n chainId,\n address(this)\n )\n );\n }\n\n function approve(address spender, uint value) external returns (bool) {\n _approve(msg.sender, spender, value);\n return true;\n }\n\n function transfer(address to, uint value) external returns (bool) {\n _transfer(msg.sender, to, value);\n return true;\n }\n\n function transferFrom(address from, address to, uint value) external returns (bool) {\n if (allowance[from][msg.sender] != uint(-1)) {\n allowance[from][msg.sender] = allowance[from][msg.sender].sub(value);\n }\n _transfer(from, to, value);\n return true;\n }\n\n function permit(\n address owner,\n address spender,\n uint value,\n uint deadline,\n uint8 v,\n bytes32 r,\n bytes32 s\n )\n external\n {\n require(deadline >= block.timestamp, \"UniswapV2: EXPIRED\");\n bytes32 digest = keccak256(\n abi.encodePacked(\n \"\\x19\\x01\",\n DOMAIN_SEPARATOR,\n keccak256(\n abi.encode(\n PERMIT_TYPEHASH,\n owner,\n spender,\n value,\n nonces[owner]++,\n deadline\n )\n )\n )\n );\n // solium-disable-next-line arg-overflow\n address recoveredAddress = ecrecover(digest, v, r, s);\n require(recoveredAddress != address(0) && recoveredAddress == owner, \"UniswapV2: INVALID_SIGNATURE\");\n _approve(owner, spender, value);\n }\n\n function _mint(address to, uint value) internal {\n totalSupply = totalSupply.add(value);\n balanceOf[to] = balanceOf[to].add(value);\n emit Transfer(address(0), to, value);\n }\n\n function _burn(address from, uint value) internal {\n balanceOf[from] = balanceOf[from].sub(value);\n totalSupply = totalSupply.sub(value);\n emit Transfer(from, address(0), value);\n }\n\n function _approve(address owner, address spender, uint value) private {\n allowance[owner][spender] = value;\n emit Approval(owner, spender, value);\n }\n\n function _transfer(address from, address to, uint value) private {\n balanceOf[from] = balanceOf[from].sub(value);\n balanceOf[to] = balanceOf[to].add(value);\n emit Transfer(from, to, value);\n }\n}\n",
|
|
353
|
-
"sourcePath": "/
|
|
353
|
+
"sourcePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/external/uniswap-v2/UniswapV2ERC20.sol",
|
|
354
354
|
"ast": {
|
|
355
|
-
"absolutePath": "/
|
|
355
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/external/uniswap-v2/UniswapV2ERC20.sol",
|
|
356
356
|
"exportedSymbols": {
|
|
357
357
|
"UniswapV2ERC20": [
|
|
358
358
|
18030
|
|
@@ -5612,7 +5612,7 @@
|
|
|
5612
5612
|
"src": "0:3910:36"
|
|
5613
5613
|
},
|
|
5614
5614
|
"legacyAST": {
|
|
5615
|
-
"absolutePath": "/
|
|
5615
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/external/uniswap-v2/UniswapV2ERC20.sol",
|
|
5616
5616
|
"exportedSymbols": {
|
|
5617
5617
|
"UniswapV2ERC20": [
|
|
5618
5618
|
18030
|
|
@@ -10877,7 +10877,7 @@
|
|
|
10877
10877
|
},
|
|
10878
10878
|
"networks": {},
|
|
10879
10879
|
"schemaVersion": "3.0.23",
|
|
10880
|
-
"updatedAt": "2022-02-
|
|
10880
|
+
"updatedAt": "2022-02-07T07:18:45.096Z",
|
|
10881
10881
|
"devdoc": {
|
|
10882
10882
|
"methods": {}
|
|
10883
10883
|
},
|
|
@@ -223,15 +223,15 @@
|
|
|
223
223
|
"type": "function"
|
|
224
224
|
}
|
|
225
225
|
],
|
|
226
|
-
"metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_feeToSetter\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token0\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token1\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"pair\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"PairCreated\",\"type\":\"event\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"allPairs\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"allPairsLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"tokenA\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tokenB\",\"type\":\"address\"}],\"name\":\"createPair\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"pair\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"feeTo\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"feeToSetter\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"getPair\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getPairInitCode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getPairInitCodeHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_feeTo\",\"type\":\"address\"}],\"name\":\"setFeeTo\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_feeToSetter\",\"type\":\"address\"}],\"name\":\"setFeeToSetter\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/
|
|
227
|
-
"bytecode": "0x608060405234801561001057600080fd5b5060405161333b38038061333b8339818101604052602081101561003357600080fd5b5051600180546001600160a01b0319166001600160a01b039092169190911790556132d8806100636000396000f3fe608060405234801561001057600080fd5b50600436106100be5760003560e01c8063a2e74af611610076578063c9c653961161005b578063c9c65396146101ed578063e6a4390514610228578063f46901ed14610263576100be565b8063a2e74af61461013b578063ba5ad85d14610170576100be565b80631e3dd18b116100a75780631e3dd18b146100fc57806324e43f3d14610119578063574f2ba314610133576100be565b8063017e7e58146100c3578063094b7415146100f4575b600080fd5b6100cb610296565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6100cb6102b2565b6100cb6004803603602081101561011257600080fd5b50356102ce565b610121610302565b60408051918252519081900360200190f35b610121610318565b61016e6004803603602081101561015157600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661031e565b005b6101786103eb565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101b257818101518382015260200161019a565b50505050905090810190601f1680156101df5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100cb6004803603604081101561020357600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81358116916020013516610433565b6100cb6004803603604081101561023e57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81358116916020013516610886565b61016e6004803603602081101561027957600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166108b9565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b60015473ffffffffffffffffffffffffffffffffffffffff1681565b600381815481106102db57fe5b60009182526020909120015473ffffffffffffffffffffffffffffffffffffffff16905081565b600061030c6103eb565b80519060200120905090565b60035490565b60015473ffffffffffffffffffffffffffffffffffffffff1633146103a457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f556e697377617056323a20464f5242494444454e000000000000000000000000604482015290519081900360640190fd5b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6060604051806020016103fd90610986565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe082820381018352601f90910116604052905090565b60008173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156104d057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f556e697377617056323a204944454e544943414c5f4144445245535345530000604482015290519081900360640190fd5b6000808373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161061050d578385610510565b84845b909250905073ffffffffffffffffffffffffffffffffffffffff821661059757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f556e697377617056323a205a45524f5f41444452455353000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff82811660009081526002602090815260408083208585168452909152902054161561063857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f556e697377617056323a20504149525f45584953545300000000000000000000604482015290519081900360640190fd5b60606040518060200161064a90610986565b6020820181038252601f19601f82011660405250905060008383604051602001808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b81526014018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b815260140192505050604051602081830303815290604052805190602001209050808251602084016000f5604080517f485cc95500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8781166004830152868116602483015291519297509087169163485cc9559160448082019260009290919082900301818387803b15801561077757600080fd5b505af115801561078b573d6000803e3d6000fd5b5050505073ffffffffffffffffffffffffffffffffffffffff84811660008181526002602081815260408084208987168086529083528185208054978d167fffffffffffffffffffffffff000000000000000000000000000000000000000098891681179091559383528185208686528352818520805488168517905560038054600181018255958190527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b90950180549097168417909655925483519283529082015281517f0d3648bd0f6ba80134a33ba9275ac585d9d315f0ad8355cddefde31afa28d0e9929181900390910190a35050505092915050565b600260209081526000928352604080842090915290825290205473ffffffffffffffffffffffffffffffffffffffff1681565b60015473ffffffffffffffffffffffffffffffffffffffff16331461093f57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f556e697377617056323a20464f5242494444454e000000000000000000000000604482015290519081900360640190fd5b600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b612910806109948339019056fe60806040526001600c5534801561001557600080fd5b5060405146908060526128be8239604080519182900360520182208282018252600a8352692ab734b9bbb0b8102b1960b11b6020938401528151808301835260018152603160f81b908401528151808401919091527fbfcc8ef98ffbf7b6c3fec7bf5185b566b9863e35a9d83acd49ad6824b5969738818301527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc6606082015260808101949094523060a0808601919091528151808603909101815260c09094019052825192019190912060035550600580546001600160a01b031916331790556127b9806101056000396000f3fe608060405234801561001057600080fd5b50600436106101b95760003560e01c80636a627842116100f9578063ba9a7a5611610097578063d21220a711610071578063d21220a71461054b578063d505accf14610553578063dd62ed3e146105a4578063fff6cae9146105d2576101b9565b8063ba9a7a5614610515578063bc25cf771461051d578063c45a015514610543576101b9565b80637ecebe00116100d35780637ecebe001461047c57806389afcb44146104a257806395d89b41146104e1578063a9059cbb146104e9576101b9565b80636a6278421461042857806370a082311461044e5780637464fc3d14610474576101b9565b806323b872dd116101665780633644e515116101405780633644e515146103e2578063485cc955146103ea5780635909c0d5146104185780635a3d549314610420576101b9565b806323b872dd1461038657806330adf81f146103bc578063313ce567146103c4576101b9565b8063095ea7b311610197578063095ea7b3146103085780630dfe16811461034857806318160ddd1461036c576101b9565b8063022c0d9f146101be57806306fdde031461024c5780630902f1ac146102c9575b600080fd5b61024a600480360360808110156101d457600080fd5b8135916020810135916001600160a01b03604083013516919081019060808101606082013564010000000081111561020b57600080fd5b82018360208201111561021d57600080fd5b8035906020019184600183028401116401000000008311171561023f57600080fd5b5090925090506105da565b005b610254610b9d565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561028e578181015183820152602001610276565b50505050905090810190601f1680156102bb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102d1610bd6565b604080516dffffffffffffffffffffffffffff948516815292909316602083015263ffffffff168183015290519081900360600190f35b6103346004803603604081101561031e57600080fd5b506001600160a01b038135169060200135610c2b565b604080519115158252519081900360200190f35b610350610c42565b604080516001600160a01b039092168252519081900360200190f35b610374610c51565b60408051918252519081900360200190f35b6103346004803603606081101561039c57600080fd5b506001600160a01b03813581169160208101359091169060400135610c57565b610374610d0f565b6103cc610d33565b6040805160ff9092168252519081900360200190f35b610374610d38565b61024a6004803603604081101561040057600080fd5b506001600160a01b0381358116916020013516610d3e565b610374610de3565b610374610de9565b6103746004803603602081101561043e57600080fd5b50356001600160a01b0316610def565b6103746004803603602081101561046457600080fd5b50356001600160a01b031661115b565b61037461116d565b6103746004803603602081101561049257600080fd5b50356001600160a01b0316611173565b6104c8600480360360208110156104b857600080fd5b50356001600160a01b0316611185565b6040805192835260208301919091528051918290030190f35b6102546115ad565b610334600480360360408110156104ff57600080fd5b506001600160a01b0381351690602001356115e6565b6103746115f3565b61024a6004803603602081101561053357600080fd5b50356001600160a01b03166115f9565b6103506117bb565b6103506117ca565b61024a600480360360e081101561056957600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060ff6080820135169060a08101359060c001356117d9565b610374600480360360408110156105ba57600080fd5b506001600160a01b0381358116916020013516611a3d565b61024a611a5a565b600c54600114610631576040805162461bcd60e51b815260206004820152601160248201527f556e697377617056323a204c4f434b4544000000000000000000000000000000604482015290519081900360640190fd5b6000600c55841515806106445750600084115b61067f5760405162461bcd60e51b81526004018080602001828103825260258152602001806126aa6025913960400191505060405180910390fd5b60008061068a610bd6565b5091509150816dffffffffffffffffffffffffffff16871080156106bd5750806dffffffffffffffffffffffffffff1686105b6106f85760405162461bcd60e51b81526004018080602001828103825260218152602001806126f36021913960400191505060405180910390fd5b60065460075460009182916001600160a01b039182169190811690891682148015906107365750806001600160a01b0316896001600160a01b031614155b610787576040805162461bcd60e51b815260206004820152601560248201527f556e697377617056323a20494e56414c49445f544f0000000000000000000000604482015290519081900360640190fd5b8a1561079857610798828a8d611c0c565b89156107a9576107a9818a8c611c0c565b861561086457886001600160a01b03166310d1e85c338d8d8c8c6040518663ffffffff1660e01b815260040180866001600160a01b03166001600160a01b03168152602001858152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b15801561084b57600080fd5b505af115801561085f573d6000803e3d6000fd5b505050505b604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290516001600160a01b038416916370a08231916024808301926020929190829003018186803b1580156108c357600080fd5b505afa1580156108d7573d6000803e3d6000fd5b505050506040513d60208110156108ed57600080fd5b5051604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519195506001600160a01b038316916370a0823191602480820192602092909190829003018186803b15801561095257600080fd5b505afa158015610966573d6000803e3d6000fd5b505050506040513d602081101561097c57600080fd5b5051925060009150506dffffffffffffffffffffffffffff85168a900383116109a65760006109bc565b89856dffffffffffffffffffffffffffff160383035b9050600089856dffffffffffffffffffffffffffff160383116109e05760006109f6565b89856dffffffffffffffffffffffffffff160383035b90506000821180610a075750600081115b610a425760405162461bcd60e51b81526004018080602001828103825260248152602001806126cf6024913960400191505060405180910390fd5b6000610a76610a5884600363ffffffff611df216565b610a6a876103e863ffffffff611df216565b9063ffffffff611e5216565b90506000610a8e610a5884600363ffffffff611df216565b9050610ac6620f4240610aba6dffffffffffffffffffffffffffff8b8116908b1663ffffffff611df216565b9063ffffffff611df216565b610ad6838363ffffffff611df216565b1015610b29576040805162461bcd60e51b815260206004820152600c60248201527f556e697377617056323a204b0000000000000000000000000000000000000000604482015290519081900360640190fd5b5050610b3784848888611e94565b60408051838152602081018390528082018d9052606081018c905290516001600160a01b038b169133917fd78ad95fa46c994b6551d0da85fc275fe613ce37657fb8d5e3d130840159d8229181900360800190a350506001600c55505050505050505050565b6040518060400160405280600a81526020017f556e69737761702056320000000000000000000000000000000000000000000081525081565b6008546dffffffffffffffffffffffffffff808216926e0100000000000000000000000000008304909116917c0100000000000000000000000000000000000000000000000000000000900463ffffffff1690565b6000610c38338484612136565b5060015b92915050565b6006546001600160a01b031681565b60005481565b6001600160a01b03831660009081526002602090815260408083203384529091528120547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff14610cfa576001600160a01b0384166000908152600260209081526040808320338452909152902054610cd5908363ffffffff611e5216565b6001600160a01b03851660009081526002602090815260408083203384529091529020555b610d05848484612198565b5060019392505050565b7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b601281565b60035481565b6005546001600160a01b03163314610d9d576040805162461bcd60e51b815260206004820152601460248201527f556e697377617056323a20464f5242494444454e000000000000000000000000604482015290519081900360640190fd5b600680546001600160a01b039384167fffffffffffffffffffffffff00000000000000000000000000000000000000009182161790915560078054929093169116179055565b60095481565b600a5481565b6000600c54600114610e48576040805162461bcd60e51b815260206004820152601160248201527f556e697377617056323a204c4f434b4544000000000000000000000000000000604482015290519081900360640190fd5b6000600c81905580610e58610bd6565b50600654604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519395509193506000926001600160a01b03909116916370a08231916024808301926020929190829003018186803b158015610ec557600080fd5b505afa158015610ed9573d6000803e3d6000fd5b505050506040513d6020811015610eef57600080fd5b5051600754604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519293506000926001600160a01b03909216916370a0823191602480820192602092909190829003018186803b158015610f5b57600080fd5b505afa158015610f6f573d6000803e3d6000fd5b505050506040513d6020811015610f8557600080fd5b505190506000610fab836dffffffffffffffffffffffffffff871663ffffffff611e5216565b90506000610fcf836dffffffffffffffffffffffffffff871663ffffffff611e5216565b90506000610fdd8787612252565b6000549091508061101a576110066103e8610a6a611001878763ffffffff611df216565b6123b7565b985061101560006103e8612409565b611077565b6110746dffffffffffffffffffffffffffff891661103e868463ffffffff611df216565b8161104557fe5b046dffffffffffffffffffffffffffff8916611067868563ffffffff611df216565b8161106e57fe5b0461249f565b98505b600089116110b65760405162461bcd60e51b815260040180806020018281038252602881526020018061273c6028913960400191505060405180910390fd5b6110c08a8a612409565b6110cc86868a8a611e94565b811561110e5760085461110a906dffffffffffffffffffffffffffff808216916e01000000000000000000000000000090041663ffffffff611df216565b600b555b6040805185815260208101859052815133927f4c209b5fc8ad50758f13e2e1088ba56a560dff690a1c6fef26394f4c03821c4f928290030190a250506001600c5550949695505050505050565b60016020526000908152604090205481565b600b5481565b60046020526000908152604090205481565b600080600c546001146111df576040805162461bcd60e51b815260206004820152601160248201527f556e697377617056323a204c4f434b4544000000000000000000000000000000604482015290519081900360640190fd5b6000600c819055806111ef610bd6565b50600654600754604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519496509294506001600160a01b039182169391169160009184916370a08231916024808301926020929190829003018186803b15801561126457600080fd5b505afa158015611278573d6000803e3d6000fd5b505050506040513d602081101561128e57600080fd5b5051604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519192506000916001600160a01b038516916370a08231916024808301926020929190829003018186803b1580156112f557600080fd5b505afa158015611309573d6000803e3d6000fd5b505050506040513d602081101561131f57600080fd5b50513060009081526001602052604081205491925061133e8888612252565b60005490915080611355848763ffffffff611df216565b8161135c57fe5b049a5080611370848663ffffffff611df216565b8161137757fe5b04995060008b11801561138a575060008a115b6113c55760405162461bcd60e51b81526004018080602001828103825260288152602001806127146028913960400191505060405180910390fd5b6113cf30846124b5565b6113da878d8d611c0c565b6113e5868d8c611c0c565b604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290516001600160a01b038916916370a08231916024808301926020929190829003018186803b15801561144457600080fd5b505afa158015611458573d6000803e3d6000fd5b505050506040513d602081101561146e57600080fd5b5051604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519196506001600160a01b038816916370a0823191602480820192602092909190829003018186803b1580156114d357600080fd5b505afa1580156114e7573d6000803e3d6000fd5b505050506040513d60208110156114fd57600080fd5b5051935061150d85858b8b611e94565b811561154f5760085461154b906dffffffffffffffffffffffffffff808216916e01000000000000000000000000000090041663ffffffff611df216565b600b555b604080518c8152602081018c905281516001600160a01b038f169233927fdccd412f0b1252819cb1fd330b93224ca42612892bb3f4f789976e6d81936496929081900390910190a35050505050505050506001600c81905550915091565b6040518060400160405280600681526020017f554e492d5632000000000000000000000000000000000000000000000000000081525081565b6000610c38338484612198565b6103e881565b600c54600114611650576040805162461bcd60e51b815260206004820152601160248201527f556e697377617056323a204c4f434b4544000000000000000000000000000000604482015290519081900360640190fd5b6000600c55600654600754600854604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290516001600160a01b03948516949093169261171f928592879261171a926dffffffffffffffffffffffffffff169185916370a0823191602480820192602092909190829003018186803b1580156116e257600080fd5b505afa1580156116f6573d6000803e3d6000fd5b505050506040513d602081101561170c57600080fd5b50519063ffffffff611e5216565b611c0c565b600854604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290516117b1928492879261171a926e01000000000000000000000000000090046dffffffffffffffffffffffffffff16916001600160a01b038616916370a0823191602480820192602092909190829003018186803b1580156116e257600080fd5b50506001600c5550565b6005546001600160a01b031681565b6007546001600160a01b031681565b4284101561182e576040805162461bcd60e51b815260206004820152601260248201527f556e697377617056323a20455850495245440000000000000000000000000000604482015290519081900360640190fd5b6003546001600160a01b0380891660008181526004602090815260408083208054600180820190925582517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98186015280840196909652958d166060860152608085018c905260a085019590955260c08085018b90528151808603909101815260e0850182528051908301207f19010000000000000000000000000000000000000000000000000000000000006101008601526101028501969096526101228085019690965280518085039096018652610142840180825286519683019690962095839052610162840180825286905260ff89166101828501526101a284018890526101c28401879052519193926101e2808201937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081019281900390910190855afa158015611982573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe001519150506001600160a01b038116158015906119d65750886001600160a01b0316816001600160a01b0316145b611a27576040805162461bcd60e51b815260206004820152601c60248201527f556e697377617056323a20494e56414c49445f5349474e415455524500000000604482015290519081900360640190fd5b611a32898989612136565b505050505050505050565b600260209081526000928352604080842090915290825290205481565b600c54600114611ab1576040805162461bcd60e51b815260206004820152601160248201527f556e697377617056323a204c4f434b4544000000000000000000000000000000604482015290519081900360640190fd5b6000600c55600654604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051611c05926001600160a01b0316916370a08231916024808301926020929190829003018186803b158015611b1b57600080fd5b505afa158015611b2f573d6000803e3d6000fd5b505050506040513d6020811015611b4557600080fd5b5051600754604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290516001600160a01b03909216916370a0823191602480820192602092909190829003018186803b158015611bab57600080fd5b505afa158015611bbf573d6000803e3d6000fd5b505050506040513d6020811015611bd557600080fd5b50516008546dffffffffffffffffffffffffffff808216916e010000000000000000000000000000900416611e94565b6001600c55565b604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb000000000000000000000000000000000000000000000000000000001781529251815160009460609489169392918291908083835b60208310611d0557805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09092019160209182019101611cc8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611d67576040519150601f19603f3d011682016040523d82523d6000602084013e611d6c565b606091505b5091509150818015611d9a575080511580611d9a5750808060200190516020811015611d9757600080fd5b50515b611deb576040805162461bcd60e51b815260206004820152601a60248201527f556e697377617056323a205452414e534645525f4641494c4544000000000000604482015290519081900360640190fd5b5050505050565b600082611e0157506000610c3c565b82820282848281611e0e57fe5b0414611e4b5760405162461bcd60e51b81526004018080602001828103825260218152602001806127646021913960400191505060405180910390fd5b9392505050565b6000611e4b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612553565b6dffffffffffffffffffffffffffff8411801590611ec057506dffffffffffffffffffffffffffff8311155b611f11576040805162461bcd60e51b815260206004820152601360248201527f556e697377617056323a204f564552464c4f5700000000000000000000000000604482015290519081900360640190fd5b60085463ffffffff428116917c010000000000000000000000000000000000000000000000000000000090048116820390811615801590611f6157506dffffffffffffffffffffffffffff841615155b8015611f7c57506dffffffffffffffffffffffffffff831615155b1561202c578063ffffffff16611fbf85611f95866125ea565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff169063ffffffff61260e16565b600980547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff929092169290920201905563ffffffff8116611fff84611f95876125ea565b600a80547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff92909216929092020190555b600880547fffffffffffffffffffffffffffffffffffff0000000000000000000000000000166dffffffffffffffffffffffffffff888116919091177fffffffff0000000000000000000000000000ffffffffffffffffffffffffffff166e0100000000000000000000000000008883168102919091177bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167c010000000000000000000000000000000000000000000000000000000063ffffffff871602179283905560408051848416815291909304909116602082015281517f1c411e9a96e071241c2f21f7726b17ae89e3cab4c78be50e062b03a9fffbbad1929181900390910190a1505050505050565b6001600160a01b03808416600081815260026020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166000908152600160205260409020546121c1908263ffffffff611e5216565b6001600160a01b0380851660009081526001602052604080822093909355908416815220546121f6908263ffffffff61264f16565b6001600160a01b0380841660008181526001602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600080600560009054906101000a90046001600160a01b03166001600160a01b031663017e7e586040518163ffffffff1660e01b815260040160206040518083038186803b1580156122a357600080fd5b505afa1580156122b7573d6000803e3d6000fd5b505050506040513d60208110156122cd57600080fd5b5051600b546001600160a01b0382161580159450919250906123a357801561239e5760006123176110016dffffffffffffffffffffffffffff88811690881663ffffffff611df216565b90506000612324836123b7565b90508082111561239b576000612352612343848463ffffffff611e5216565b6000549063ffffffff611df216565b905060006123778361236b86600563ffffffff611df216565b9063ffffffff61264f16565b9050600081838161238457fe5b0490508015612397576123978782612409565b5050505b50505b6123af565b80156123af576000600b555b505092915050565b600060038211156123fa575080600160028204015b818110156123f4578091506002818285816123e357fe5b0401816123ec57fe5b0490506123cc565b50612404565b8115612404575060015b919050565b60005461241c908263ffffffff61264f16565b60009081556001600160a01b038316815260016020526040902054612447908263ffffffff61264f16565b6001600160a01b03831660008181526001602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b60008183106124ae5781611e4b565b5090919050565b6001600160a01b0382166000908152600160205260409020546124de908263ffffffff611e5216565b6001600160a01b0383166000908152600160205260408120919091555461250b908263ffffffff611e5216565b60009081556040805183815290516001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef919081900360200190a35050565b600081848411156125e25760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156125a757818101518382015260200161258f565b50505050905090810190601f1680156125d45780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6dffffffffffffffffffffffffffff166e0100000000000000000000000000000290565b60006dffffffffffffffffffffffffffff82167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff84168161264757fe5b049392505050565b600082820183811015611e4b576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fdfe556e697377617056323a20494e53554646494349454e545f4f55545055545f414d4f554e54556e697377617056323a20494e53554646494349454e545f494e5055545f414d4f554e54556e697377617056323a20494e53554646494349454e545f4c4951554944495459556e697377617056323a20494e53554646494349454e545f4c49515549444954595f4255524e4544556e697377617056323a20494e53554646494349454e545f4c49515549444954595f4d494e544544536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a72315820cc95d2ef801932ebd73a922c1bc28e02bf451c82e9a849f2eec5f070eecb581564736f6c63430005100032454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e747261637429a265627a7a72315820ab52487d8ff4ca68d640589b1cac1d41bdf94f494cf5bd2773aea400a499787264736f6c63430005100032",
|
|
228
|
-
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100be5760003560e01c8063a2e74af611610076578063c9c653961161005b578063c9c65396146101ed578063e6a4390514610228578063f46901ed14610263576100be565b8063a2e74af61461013b578063ba5ad85d14610170576100be565b80631e3dd18b116100a75780631e3dd18b146100fc57806324e43f3d14610119578063574f2ba314610133576100be565b8063017e7e58146100c3578063094b7415146100f4575b600080fd5b6100cb610296565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6100cb6102b2565b6100cb6004803603602081101561011257600080fd5b50356102ce565b610121610302565b60408051918252519081900360200190f35b610121610318565b61016e6004803603602081101561015157600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661031e565b005b6101786103eb565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101b257818101518382015260200161019a565b50505050905090810190601f1680156101df5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100cb6004803603604081101561020357600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81358116916020013516610433565b6100cb6004803603604081101561023e57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81358116916020013516610886565b61016e6004803603602081101561027957600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166108b9565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b60015473ffffffffffffffffffffffffffffffffffffffff1681565b600381815481106102db57fe5b60009182526020909120015473ffffffffffffffffffffffffffffffffffffffff16905081565b600061030c6103eb565b80519060200120905090565b60035490565b60015473ffffffffffffffffffffffffffffffffffffffff1633146103a457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f556e697377617056323a20464f5242494444454e000000000000000000000000604482015290519081900360640190fd5b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6060604051806020016103fd90610986565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe082820381018352601f90910116604052905090565b60008173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156104d057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f556e697377617056323a204944454e544943414c5f4144445245535345530000604482015290519081900360640190fd5b6000808373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161061050d578385610510565b84845b909250905073ffffffffffffffffffffffffffffffffffffffff821661059757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f556e697377617056323a205a45524f5f41444452455353000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff82811660009081526002602090815260408083208585168452909152902054161561063857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f556e697377617056323a20504149525f45584953545300000000000000000000604482015290519081900360640190fd5b60606040518060200161064a90610986565b6020820181038252601f19601f82011660405250905060008383604051602001808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b81526014018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b815260140192505050604051602081830303815290604052805190602001209050808251602084016000f5604080517f485cc95500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8781166004830152868116602483015291519297509087169163485cc9559160448082019260009290919082900301818387803b15801561077757600080fd5b505af115801561078b573d6000803e3d6000fd5b5050505073ffffffffffffffffffffffffffffffffffffffff84811660008181526002602081815260408084208987168086529083528185208054978d167fffffffffffffffffffffffff000000000000000000000000000000000000000098891681179091559383528185208686528352818520805488168517905560038054600181018255958190527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b90950180549097168417909655925483519283529082015281517f0d3648bd0f6ba80134a33ba9275ac585d9d315f0ad8355cddefde31afa28d0e9929181900390910190a35050505092915050565b600260209081526000928352604080842090915290825290205473ffffffffffffffffffffffffffffffffffffffff1681565b60015473ffffffffffffffffffffffffffffffffffffffff16331461093f57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f556e697377617056323a20464f5242494444454e000000000000000000000000604482015290519081900360640190fd5b600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b612910806109948339019056fe60806040526001600c5534801561001557600080fd5b5060405146908060526128be8239604080519182900360520182208282018252600a8352692ab734b9bbb0b8102b1960b11b6020938401528151808301835260018152603160f81b908401528151808401919091527fbfcc8ef98ffbf7b6c3fec7bf5185b566b9863e35a9d83acd49ad6824b5969738818301527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc6606082015260808101949094523060a0808601919091528151808603909101815260c09094019052825192019190912060035550600580546001600160a01b031916331790556127b9806101056000396000f3fe608060405234801561001057600080fd5b50600436106101b95760003560e01c80636a627842116100f9578063ba9a7a5611610097578063d21220a711610071578063d21220a71461054b578063d505accf14610553578063dd62ed3e146105a4578063fff6cae9146105d2576101b9565b8063ba9a7a5614610515578063bc25cf771461051d578063c45a015514610543576101b9565b80637ecebe00116100d35780637ecebe001461047c57806389afcb44146104a257806395d89b41146104e1578063a9059cbb146104e9576101b9565b80636a6278421461042857806370a082311461044e5780637464fc3d14610474576101b9565b806323b872dd116101665780633644e515116101405780633644e515146103e2578063485cc955146103ea5780635909c0d5146104185780635a3d549314610420576101b9565b806323b872dd1461038657806330adf81f146103bc578063313ce567146103c4576101b9565b8063095ea7b311610197578063095ea7b3146103085780630dfe16811461034857806318160ddd1461036c576101b9565b8063022c0d9f146101be57806306fdde031461024c5780630902f1ac146102c9575b600080fd5b61024a600480360360808110156101d457600080fd5b8135916020810135916001600160a01b03604083013516919081019060808101606082013564010000000081111561020b57600080fd5b82018360208201111561021d57600080fd5b8035906020019184600183028401116401000000008311171561023f57600080fd5b5090925090506105da565b005b610254610b9d565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561028e578181015183820152602001610276565b50505050905090810190601f1680156102bb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102d1610bd6565b604080516dffffffffffffffffffffffffffff948516815292909316602083015263ffffffff168183015290519081900360600190f35b6103346004803603604081101561031e57600080fd5b506001600160a01b038135169060200135610c2b565b604080519115158252519081900360200190f35b610350610c42565b604080516001600160a01b039092168252519081900360200190f35b610374610c51565b60408051918252519081900360200190f35b6103346004803603606081101561039c57600080fd5b506001600160a01b03813581169160208101359091169060400135610c57565b610374610d0f565b6103cc610d33565b6040805160ff9092168252519081900360200190f35b610374610d38565b61024a6004803603604081101561040057600080fd5b506001600160a01b0381358116916020013516610d3e565b610374610de3565b610374610de9565b6103746004803603602081101561043e57600080fd5b50356001600160a01b0316610def565b6103746004803603602081101561046457600080fd5b50356001600160a01b031661115b565b61037461116d565b6103746004803603602081101561049257600080fd5b50356001600160a01b0316611173565b6104c8600480360360208110156104b857600080fd5b50356001600160a01b0316611185565b6040805192835260208301919091528051918290030190f35b6102546115ad565b610334600480360360408110156104ff57600080fd5b506001600160a01b0381351690602001356115e6565b6103746115f3565b61024a6004803603602081101561053357600080fd5b50356001600160a01b03166115f9565b6103506117bb565b6103506117ca565b61024a600480360360e081101561056957600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060ff6080820135169060a08101359060c001356117d9565b610374600480360360408110156105ba57600080fd5b506001600160a01b0381358116916020013516611a3d565b61024a611a5a565b600c54600114610631576040805162461bcd60e51b815260206004820152601160248201527f556e697377617056323a204c4f434b4544000000000000000000000000000000604482015290519081900360640190fd5b6000600c55841515806106445750600084115b61067f5760405162461bcd60e51b81526004018080602001828103825260258152602001806126aa6025913960400191505060405180910390fd5b60008061068a610bd6565b5091509150816dffffffffffffffffffffffffffff16871080156106bd5750806dffffffffffffffffffffffffffff1686105b6106f85760405162461bcd60e51b81526004018080602001828103825260218152602001806126f36021913960400191505060405180910390fd5b60065460075460009182916001600160a01b039182169190811690891682148015906107365750806001600160a01b0316896001600160a01b031614155b610787576040805162461bcd60e51b815260206004820152601560248201527f556e697377617056323a20494e56414c49445f544f0000000000000000000000604482015290519081900360640190fd5b8a1561079857610798828a8d611c0c565b89156107a9576107a9818a8c611c0c565b861561086457886001600160a01b03166310d1e85c338d8d8c8c6040518663ffffffff1660e01b815260040180866001600160a01b03166001600160a01b03168152602001858152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b15801561084b57600080fd5b505af115801561085f573d6000803e3d6000fd5b505050505b604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290516001600160a01b038416916370a08231916024808301926020929190829003018186803b1580156108c357600080fd5b505afa1580156108d7573d6000803e3d6000fd5b505050506040513d60208110156108ed57600080fd5b5051604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519195506001600160a01b038316916370a0823191602480820192602092909190829003018186803b15801561095257600080fd5b505afa158015610966573d6000803e3d6000fd5b505050506040513d602081101561097c57600080fd5b5051925060009150506dffffffffffffffffffffffffffff85168a900383116109a65760006109bc565b89856dffffffffffffffffffffffffffff160383035b9050600089856dffffffffffffffffffffffffffff160383116109e05760006109f6565b89856dffffffffffffffffffffffffffff160383035b90506000821180610a075750600081115b610a425760405162461bcd60e51b81526004018080602001828103825260248152602001806126cf6024913960400191505060405180910390fd5b6000610a76610a5884600363ffffffff611df216565b610a6a876103e863ffffffff611df216565b9063ffffffff611e5216565b90506000610a8e610a5884600363ffffffff611df216565b9050610ac6620f4240610aba6dffffffffffffffffffffffffffff8b8116908b1663ffffffff611df216565b9063ffffffff611df216565b610ad6838363ffffffff611df216565b1015610b29576040805162461bcd60e51b815260206004820152600c60248201527f556e697377617056323a204b0000000000000000000000000000000000000000604482015290519081900360640190fd5b5050610b3784848888611e94565b60408051838152602081018390528082018d9052606081018c905290516001600160a01b038b169133917fd78ad95fa46c994b6551d0da85fc275fe613ce37657fb8d5e3d130840159d8229181900360800190a350506001600c55505050505050505050565b6040518060400160405280600a81526020017f556e69737761702056320000000000000000000000000000000000000000000081525081565b6008546dffffffffffffffffffffffffffff808216926e0100000000000000000000000000008304909116917c0100000000000000000000000000000000000000000000000000000000900463ffffffff1690565b6000610c38338484612136565b5060015b92915050565b6006546001600160a01b031681565b60005481565b6001600160a01b03831660009081526002602090815260408083203384529091528120547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff14610cfa576001600160a01b0384166000908152600260209081526040808320338452909152902054610cd5908363ffffffff611e5216565b6001600160a01b03851660009081526002602090815260408083203384529091529020555b610d05848484612198565b5060019392505050565b7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b601281565b60035481565b6005546001600160a01b03163314610d9d576040805162461bcd60e51b815260206004820152601460248201527f556e697377617056323a20464f5242494444454e000000000000000000000000604482015290519081900360640190fd5b600680546001600160a01b039384167fffffffffffffffffffffffff00000000000000000000000000000000000000009182161790915560078054929093169116179055565b60095481565b600a5481565b6000600c54600114610e48576040805162461bcd60e51b815260206004820152601160248201527f556e697377617056323a204c4f434b4544000000000000000000000000000000604482015290519081900360640190fd5b6000600c81905580610e58610bd6565b50600654604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519395509193506000926001600160a01b03909116916370a08231916024808301926020929190829003018186803b158015610ec557600080fd5b505afa158015610ed9573d6000803e3d6000fd5b505050506040513d6020811015610eef57600080fd5b5051600754604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519293506000926001600160a01b03909216916370a0823191602480820192602092909190829003018186803b158015610f5b57600080fd5b505afa158015610f6f573d6000803e3d6000fd5b505050506040513d6020811015610f8557600080fd5b505190506000610fab836dffffffffffffffffffffffffffff871663ffffffff611e5216565b90506000610fcf836dffffffffffffffffffffffffffff871663ffffffff611e5216565b90506000610fdd8787612252565b6000549091508061101a576110066103e8610a6a611001878763ffffffff611df216565b6123b7565b985061101560006103e8612409565b611077565b6110746dffffffffffffffffffffffffffff891661103e868463ffffffff611df216565b8161104557fe5b046dffffffffffffffffffffffffffff8916611067868563ffffffff611df216565b8161106e57fe5b0461249f565b98505b600089116110b65760405162461bcd60e51b815260040180806020018281038252602881526020018061273c6028913960400191505060405180910390fd5b6110c08a8a612409565b6110cc86868a8a611e94565b811561110e5760085461110a906dffffffffffffffffffffffffffff808216916e01000000000000000000000000000090041663ffffffff611df216565b600b555b6040805185815260208101859052815133927f4c209b5fc8ad50758f13e2e1088ba56a560dff690a1c6fef26394f4c03821c4f928290030190a250506001600c5550949695505050505050565b60016020526000908152604090205481565b600b5481565b60046020526000908152604090205481565b600080600c546001146111df576040805162461bcd60e51b815260206004820152601160248201527f556e697377617056323a204c4f434b4544000000000000000000000000000000604482015290519081900360640190fd5b6000600c819055806111ef610bd6565b50600654600754604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519496509294506001600160a01b039182169391169160009184916370a08231916024808301926020929190829003018186803b15801561126457600080fd5b505afa158015611278573d6000803e3d6000fd5b505050506040513d602081101561128e57600080fd5b5051604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519192506000916001600160a01b038516916370a08231916024808301926020929190829003018186803b1580156112f557600080fd5b505afa158015611309573d6000803e3d6000fd5b505050506040513d602081101561131f57600080fd5b50513060009081526001602052604081205491925061133e8888612252565b60005490915080611355848763ffffffff611df216565b8161135c57fe5b049a5080611370848663ffffffff611df216565b8161137757fe5b04995060008b11801561138a575060008a115b6113c55760405162461bcd60e51b81526004018080602001828103825260288152602001806127146028913960400191505060405180910390fd5b6113cf30846124b5565b6113da878d8d611c0c565b6113e5868d8c611c0c565b604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290516001600160a01b038916916370a08231916024808301926020929190829003018186803b15801561144457600080fd5b505afa158015611458573d6000803e3d6000fd5b505050506040513d602081101561146e57600080fd5b5051604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519196506001600160a01b038816916370a0823191602480820192602092909190829003018186803b1580156114d357600080fd5b505afa1580156114e7573d6000803e3d6000fd5b505050506040513d60208110156114fd57600080fd5b5051935061150d85858b8b611e94565b811561154f5760085461154b906dffffffffffffffffffffffffffff808216916e01000000000000000000000000000090041663ffffffff611df216565b600b555b604080518c8152602081018c905281516001600160a01b038f169233927fdccd412f0b1252819cb1fd330b93224ca42612892bb3f4f789976e6d81936496929081900390910190a35050505050505050506001600c81905550915091565b6040518060400160405280600681526020017f554e492d5632000000000000000000000000000000000000000000000000000081525081565b6000610c38338484612198565b6103e881565b600c54600114611650576040805162461bcd60e51b815260206004820152601160248201527f556e697377617056323a204c4f434b4544000000000000000000000000000000604482015290519081900360640190fd5b6000600c55600654600754600854604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290516001600160a01b03948516949093169261171f928592879261171a926dffffffffffffffffffffffffffff169185916370a0823191602480820192602092909190829003018186803b1580156116e257600080fd5b505afa1580156116f6573d6000803e3d6000fd5b505050506040513d602081101561170c57600080fd5b50519063ffffffff611e5216565b611c0c565b600854604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290516117b1928492879261171a926e01000000000000000000000000000090046dffffffffffffffffffffffffffff16916001600160a01b038616916370a0823191602480820192602092909190829003018186803b1580156116e257600080fd5b50506001600c5550565b6005546001600160a01b031681565b6007546001600160a01b031681565b4284101561182e576040805162461bcd60e51b815260206004820152601260248201527f556e697377617056323a20455850495245440000000000000000000000000000604482015290519081900360640190fd5b6003546001600160a01b0380891660008181526004602090815260408083208054600180820190925582517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98186015280840196909652958d166060860152608085018c905260a085019590955260c08085018b90528151808603909101815260e0850182528051908301207f19010000000000000000000000000000000000000000000000000000000000006101008601526101028501969096526101228085019690965280518085039096018652610142840180825286519683019690962095839052610162840180825286905260ff89166101828501526101a284018890526101c28401879052519193926101e2808201937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081019281900390910190855afa158015611982573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe001519150506001600160a01b038116158015906119d65750886001600160a01b0316816001600160a01b0316145b611a27576040805162461bcd60e51b815260206004820152601c60248201527f556e697377617056323a20494e56414c49445f5349474e415455524500000000604482015290519081900360640190fd5b611a32898989612136565b505050505050505050565b600260209081526000928352604080842090915290825290205481565b600c54600114611ab1576040805162461bcd60e51b815260206004820152601160248201527f556e697377617056323a204c4f434b4544000000000000000000000000000000604482015290519081900360640190fd5b6000600c55600654604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051611c05926001600160a01b0316916370a08231916024808301926020929190829003018186803b158015611b1b57600080fd5b505afa158015611b2f573d6000803e3d6000fd5b505050506040513d6020811015611b4557600080fd5b5051600754604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290516001600160a01b03909216916370a0823191602480820192602092909190829003018186803b158015611bab57600080fd5b505afa158015611bbf573d6000803e3d6000fd5b505050506040513d6020811015611bd557600080fd5b50516008546dffffffffffffffffffffffffffff808216916e010000000000000000000000000000900416611e94565b6001600c55565b604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb000000000000000000000000000000000000000000000000000000001781529251815160009460609489169392918291908083835b60208310611d0557805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09092019160209182019101611cc8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611d67576040519150601f19603f3d011682016040523d82523d6000602084013e611d6c565b606091505b5091509150818015611d9a575080511580611d9a5750808060200190516020811015611d9757600080fd5b50515b611deb576040805162461bcd60e51b815260206004820152601a60248201527f556e697377617056323a205452414e534645525f4641494c4544000000000000604482015290519081900360640190fd5b5050505050565b600082611e0157506000610c3c565b82820282848281611e0e57fe5b0414611e4b5760405162461bcd60e51b81526004018080602001828103825260218152602001806127646021913960400191505060405180910390fd5b9392505050565b6000611e4b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612553565b6dffffffffffffffffffffffffffff8411801590611ec057506dffffffffffffffffffffffffffff8311155b611f11576040805162461bcd60e51b815260206004820152601360248201527f556e697377617056323a204f564552464c4f5700000000000000000000000000604482015290519081900360640190fd5b60085463ffffffff428116917c010000000000000000000000000000000000000000000000000000000090048116820390811615801590611f6157506dffffffffffffffffffffffffffff841615155b8015611f7c57506dffffffffffffffffffffffffffff831615155b1561202c578063ffffffff16611fbf85611f95866125ea565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff169063ffffffff61260e16565b600980547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff929092169290920201905563ffffffff8116611fff84611f95876125ea565b600a80547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff92909216929092020190555b600880547fffffffffffffffffffffffffffffffffffff0000000000000000000000000000166dffffffffffffffffffffffffffff888116919091177fffffffff0000000000000000000000000000ffffffffffffffffffffffffffff166e0100000000000000000000000000008883168102919091177bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167c010000000000000000000000000000000000000000000000000000000063ffffffff871602179283905560408051848416815291909304909116602082015281517f1c411e9a96e071241c2f21f7726b17ae89e3cab4c78be50e062b03a9fffbbad1929181900390910190a1505050505050565b6001600160a01b03808416600081815260026020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166000908152600160205260409020546121c1908263ffffffff611e5216565b6001600160a01b0380851660009081526001602052604080822093909355908416815220546121f6908263ffffffff61264f16565b6001600160a01b0380841660008181526001602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600080600560009054906101000a90046001600160a01b03166001600160a01b031663017e7e586040518163ffffffff1660e01b815260040160206040518083038186803b1580156122a357600080fd5b505afa1580156122b7573d6000803e3d6000fd5b505050506040513d60208110156122cd57600080fd5b5051600b546001600160a01b0382161580159450919250906123a357801561239e5760006123176110016dffffffffffffffffffffffffffff88811690881663ffffffff611df216565b90506000612324836123b7565b90508082111561239b576000612352612343848463ffffffff611e5216565b6000549063ffffffff611df216565b905060006123778361236b86600563ffffffff611df216565b9063ffffffff61264f16565b9050600081838161238457fe5b0490508015612397576123978782612409565b5050505b50505b6123af565b80156123af576000600b555b505092915050565b600060038211156123fa575080600160028204015b818110156123f4578091506002818285816123e357fe5b0401816123ec57fe5b0490506123cc565b50612404565b8115612404575060015b919050565b60005461241c908263ffffffff61264f16565b60009081556001600160a01b038316815260016020526040902054612447908263ffffffff61264f16565b6001600160a01b03831660008181526001602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b60008183106124ae5781611e4b565b5090919050565b6001600160a01b0382166000908152600160205260409020546124de908263ffffffff611e5216565b6001600160a01b0383166000908152600160205260408120919091555461250b908263ffffffff611e5216565b60009081556040805183815290516001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef919081900360200190a35050565b600081848411156125e25760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156125a757818101518382015260200161258f565b50505050905090810190601f1680156125d45780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6dffffffffffffffffffffffffffff166e0100000000000000000000000000000290565b60006dffffffffffffffffffffffffffff82167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff84168161264757fe5b049392505050565b600082820183811015611e4b576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fdfe556e697377617056323a20494e53554646494349454e545f4f55545055545f414d4f554e54556e697377617056323a20494e53554646494349454e545f494e5055545f414d4f554e54556e697377617056323a20494e53554646494349454e545f4c4951554944495459556e697377617056323a20494e53554646494349454e545f4c49515549444954595f4255524e4544556e697377617056323a20494e53554646494349454e545f4c49515549444954595f4d494e544544536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a72315820cc95d2ef801932ebd73a922c1bc28e02bf451c82e9a849f2eec5f070eecb581564736f6c63430005100032454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e747261637429a265627a7a72315820ab52487d8ff4ca68d640589b1cac1d41bdf94f494cf5bd2773aea400a499787264736f6c63430005100032",
|
|
226
|
+
"metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_feeToSetter\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token0\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token1\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"pair\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"PairCreated\",\"type\":\"event\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"allPairs\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"allPairsLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"tokenA\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tokenB\",\"type\":\"address\"}],\"name\":\"createPair\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"pair\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"feeTo\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"feeToSetter\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"getPair\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getPairInitCode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getPairInitCodeHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_feeTo\",\"type\":\"address\"}],\"name\":\"setFeeTo\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_feeToSetter\",\"type\":\"address\"}],\"name\":\"setFeeToSetter\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/external/uniswap-v2/UniswapV2Factory.sol\":\"UniswapV2Factory\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/external/lib/AdvancedMath.sol\":{\"keccak256\":\"0x652e05fcd01111a15abf215bd9869e8e54cf1170acbdad0295b62a8adc81d78c\",\"urls\":[\"bzz-raw://7c137edcac22812344c06b742583f75f0b1ec33e5fedc68e88dc0b399b7299f9\",\"dweb:/ipfs/QmQu8asaE1SUD4zxDRU557rY7zMJchkwN75zmZvxJdCFMp\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/external/lib/UQ112x112.sol\":{\"keccak256\":\"0x444a4eb83efb08b77e44c0ab3ea063903312e3dbde92ebdafeb137abba9c9cdd\",\"urls\":[\"bzz-raw://85323f3d86597716ad0491f8f719d0759292c818719116d038adc14ca72aac9e\",\"dweb:/ipfs/QmcYayCsypWmEh8vJwV5kzV6BbPY6fH2ZAz78DPiKD4iUm\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/external/uniswap-v2/UniswapV2ERC20.sol\":{\"keccak256\":\"0xb39cd0553ef5cf1e768c65378612436d6309be18a2d94d68277339b2087af5dc\",\"urls\":[\"bzz-raw://d1428077b6d0e7b28ca9e01c7cf7992a4e376a4ee201d927130a7ec678ee8123\",\"dweb:/ipfs/QmXW2Z9G8PgmJqDV3gJmjgdnqoGCHSDByeQ4jdL2pb6nWc\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/external/uniswap-v2/UniswapV2Factory.sol\":{\"keccak256\":\"0xa3e31837af6a6771f4cc797be681b97dc1ba9803420ba7d427ddba88071c0210\",\"urls\":[\"bzz-raw://ae5842e3211842d94a8c5993411b15c137f407598ec6e86eb47958b2117f8b60\",\"dweb:/ipfs/QmZQfxrASCwCMciTExyifryEpisP3r8n6AewKFWzbNxYon\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/external/uniswap-v2/UniswapV2Pair.sol\":{\"keccak256\":\"0xa258298500684d5c21d8f0f1a8d3e6000938d578bacadb3638097b01c7f6ee5b\",\"urls\":[\"bzz-raw://aa5cff363d0f2c80bf7068864f5317e0f0a0475cd42ab8c78200813e2c8e927c\",\"dweb:/ipfs/QmTeTwfxmbhJ3JxN3gShohBrmVxncQNQDoLFMTxxbM9VVz\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/external/uniswap-v2/interfaces/IUniswapV2Callee.sol\":{\"keccak256\":\"0x63a17d060ad3f6f4dd9b538a17404224e8387d356c8243d95f106b79e3aa6151\",\"urls\":[\"bzz-raw://10cb1b994fb2875e3c7c10fdbdf95f490c064fcfb41bb889ad18c2e74a2ac6c9\",\"dweb:/ipfs/QmRoqvXGDx781ugU5Ea6AivjTUdBy3p9XpmbqZdJ1rykSo\"]},\"/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/external/uniswap-v2/interfaces/IUniswapV2Factory.sol\":{\"keccak256\":\"0x8a4afa0d6b02a342c46834aab92ded1a0c79a91a48571548721dd44274584e2d\",\"urls\":[\"bzz-raw://b9e2e1ae41aabd054346cfb52a9d9394ffad519347362350a0b76a3236184e8e\",\"dweb:/ipfs/Qmd3uS4fijtCkxZXbgBxscJim6F1bkjEiWhJ6jLD3FpdKr\"]},\"@openzeppelin/contracts/math/Math.sol\":{\"keccak256\":\"0x4b5aa451e4e8801478708f94b118a7821c0500d676255eaf89fc78c14856ce4e\",\"urls\":[\"bzz-raw://bed15b3f35ed05505efc8fb5cb01d06c52230fbcaadf4ed24a85b1ac2f15f33c\",\"dweb:/ipfs/QmS6tW81u8E4tvzVfVuqEuMCkdwAozQ6pKJPRBR4JEVmQp\"]},\"@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}",
|
|
227
|
+
"bytecode": "0x608060405234801561001057600080fd5b5060405161333b38038061333b8339818101604052602081101561003357600080fd5b5051600180546001600160a01b0319166001600160a01b039092169190911790556132d8806100636000396000f3fe608060405234801561001057600080fd5b50600436106100be5760003560e01c8063a2e74af611610076578063c9c653961161005b578063c9c65396146101ed578063e6a4390514610228578063f46901ed14610263576100be565b8063a2e74af61461013b578063ba5ad85d14610170576100be565b80631e3dd18b116100a75780631e3dd18b146100fc57806324e43f3d14610119578063574f2ba314610133576100be565b8063017e7e58146100c3578063094b7415146100f4575b600080fd5b6100cb610296565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6100cb6102b2565b6100cb6004803603602081101561011257600080fd5b50356102ce565b610121610302565b60408051918252519081900360200190f35b610121610318565b61016e6004803603602081101561015157600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661031e565b005b6101786103eb565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101b257818101518382015260200161019a565b50505050905090810190601f1680156101df5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100cb6004803603604081101561020357600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81358116916020013516610433565b6100cb6004803603604081101561023e57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81358116916020013516610886565b61016e6004803603602081101561027957600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166108b9565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b60015473ffffffffffffffffffffffffffffffffffffffff1681565b600381815481106102db57fe5b60009182526020909120015473ffffffffffffffffffffffffffffffffffffffff16905081565b600061030c6103eb565b80519060200120905090565b60035490565b60015473ffffffffffffffffffffffffffffffffffffffff1633146103a457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f556e697377617056323a20464f5242494444454e000000000000000000000000604482015290519081900360640190fd5b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6060604051806020016103fd90610986565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe082820381018352601f90910116604052905090565b60008173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156104d057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f556e697377617056323a204944454e544943414c5f4144445245535345530000604482015290519081900360640190fd5b6000808373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161061050d578385610510565b84845b909250905073ffffffffffffffffffffffffffffffffffffffff821661059757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f556e697377617056323a205a45524f5f41444452455353000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff82811660009081526002602090815260408083208585168452909152902054161561063857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f556e697377617056323a20504149525f45584953545300000000000000000000604482015290519081900360640190fd5b60606040518060200161064a90610986565b6020820181038252601f19601f82011660405250905060008383604051602001808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b81526014018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b815260140192505050604051602081830303815290604052805190602001209050808251602084016000f5604080517f485cc95500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8781166004830152868116602483015291519297509087169163485cc9559160448082019260009290919082900301818387803b15801561077757600080fd5b505af115801561078b573d6000803e3d6000fd5b5050505073ffffffffffffffffffffffffffffffffffffffff84811660008181526002602081815260408084208987168086529083528185208054978d167fffffffffffffffffffffffff000000000000000000000000000000000000000098891681179091559383528185208686528352818520805488168517905560038054600181018255958190527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b90950180549097168417909655925483519283529082015281517f0d3648bd0f6ba80134a33ba9275ac585d9d315f0ad8355cddefde31afa28d0e9929181900390910190a35050505092915050565b600260209081526000928352604080842090915290825290205473ffffffffffffffffffffffffffffffffffffffff1681565b60015473ffffffffffffffffffffffffffffffffffffffff16331461093f57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f556e697377617056323a20464f5242494444454e000000000000000000000000604482015290519081900360640190fd5b600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b612910806109948339019056fe60806040526001600c5534801561001557600080fd5b5060405146908060526128be8239604080519182900360520182208282018252600a8352692ab734b9bbb0b8102b1960b11b6020938401528151808301835260018152603160f81b908401528151808401919091527fbfcc8ef98ffbf7b6c3fec7bf5185b566b9863e35a9d83acd49ad6824b5969738818301527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc6606082015260808101949094523060a0808601919091528151808603909101815260c09094019052825192019190912060035550600580546001600160a01b031916331790556127b9806101056000396000f3fe608060405234801561001057600080fd5b50600436106101b95760003560e01c80636a627842116100f9578063ba9a7a5611610097578063d21220a711610071578063d21220a71461054b578063d505accf14610553578063dd62ed3e146105a4578063fff6cae9146105d2576101b9565b8063ba9a7a5614610515578063bc25cf771461051d578063c45a015514610543576101b9565b80637ecebe00116100d35780637ecebe001461047c57806389afcb44146104a257806395d89b41146104e1578063a9059cbb146104e9576101b9565b80636a6278421461042857806370a082311461044e5780637464fc3d14610474576101b9565b806323b872dd116101665780633644e515116101405780633644e515146103e2578063485cc955146103ea5780635909c0d5146104185780635a3d549314610420576101b9565b806323b872dd1461038657806330adf81f146103bc578063313ce567146103c4576101b9565b8063095ea7b311610197578063095ea7b3146103085780630dfe16811461034857806318160ddd1461036c576101b9565b8063022c0d9f146101be57806306fdde031461024c5780630902f1ac146102c9575b600080fd5b61024a600480360360808110156101d457600080fd5b8135916020810135916001600160a01b03604083013516919081019060808101606082013564010000000081111561020b57600080fd5b82018360208201111561021d57600080fd5b8035906020019184600183028401116401000000008311171561023f57600080fd5b5090925090506105da565b005b610254610b9d565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561028e578181015183820152602001610276565b50505050905090810190601f1680156102bb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102d1610bd6565b604080516dffffffffffffffffffffffffffff948516815292909316602083015263ffffffff168183015290519081900360600190f35b6103346004803603604081101561031e57600080fd5b506001600160a01b038135169060200135610c2b565b604080519115158252519081900360200190f35b610350610c42565b604080516001600160a01b039092168252519081900360200190f35b610374610c51565b60408051918252519081900360200190f35b6103346004803603606081101561039c57600080fd5b506001600160a01b03813581169160208101359091169060400135610c57565b610374610d0f565b6103cc610d33565b6040805160ff9092168252519081900360200190f35b610374610d38565b61024a6004803603604081101561040057600080fd5b506001600160a01b0381358116916020013516610d3e565b610374610de3565b610374610de9565b6103746004803603602081101561043e57600080fd5b50356001600160a01b0316610def565b6103746004803603602081101561046457600080fd5b50356001600160a01b031661115b565b61037461116d565b6103746004803603602081101561049257600080fd5b50356001600160a01b0316611173565b6104c8600480360360208110156104b857600080fd5b50356001600160a01b0316611185565b6040805192835260208301919091528051918290030190f35b6102546115ad565b610334600480360360408110156104ff57600080fd5b506001600160a01b0381351690602001356115e6565b6103746115f3565b61024a6004803603602081101561053357600080fd5b50356001600160a01b03166115f9565b6103506117bb565b6103506117ca565b61024a600480360360e081101561056957600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060ff6080820135169060a08101359060c001356117d9565b610374600480360360408110156105ba57600080fd5b506001600160a01b0381358116916020013516611a3d565b61024a611a5a565b600c54600114610631576040805162461bcd60e51b815260206004820152601160248201527f556e697377617056323a204c4f434b4544000000000000000000000000000000604482015290519081900360640190fd5b6000600c55841515806106445750600084115b61067f5760405162461bcd60e51b81526004018080602001828103825260258152602001806126aa6025913960400191505060405180910390fd5b60008061068a610bd6565b5091509150816dffffffffffffffffffffffffffff16871080156106bd5750806dffffffffffffffffffffffffffff1686105b6106f85760405162461bcd60e51b81526004018080602001828103825260218152602001806126f36021913960400191505060405180910390fd5b60065460075460009182916001600160a01b039182169190811690891682148015906107365750806001600160a01b0316896001600160a01b031614155b610787576040805162461bcd60e51b815260206004820152601560248201527f556e697377617056323a20494e56414c49445f544f0000000000000000000000604482015290519081900360640190fd5b8a1561079857610798828a8d611c0c565b89156107a9576107a9818a8c611c0c565b861561086457886001600160a01b03166310d1e85c338d8d8c8c6040518663ffffffff1660e01b815260040180866001600160a01b03166001600160a01b03168152602001858152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b15801561084b57600080fd5b505af115801561085f573d6000803e3d6000fd5b505050505b604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290516001600160a01b038416916370a08231916024808301926020929190829003018186803b1580156108c357600080fd5b505afa1580156108d7573d6000803e3d6000fd5b505050506040513d60208110156108ed57600080fd5b5051604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519195506001600160a01b038316916370a0823191602480820192602092909190829003018186803b15801561095257600080fd5b505afa158015610966573d6000803e3d6000fd5b505050506040513d602081101561097c57600080fd5b5051925060009150506dffffffffffffffffffffffffffff85168a900383116109a65760006109bc565b89856dffffffffffffffffffffffffffff160383035b9050600089856dffffffffffffffffffffffffffff160383116109e05760006109f6565b89856dffffffffffffffffffffffffffff160383035b90506000821180610a075750600081115b610a425760405162461bcd60e51b81526004018080602001828103825260248152602001806126cf6024913960400191505060405180910390fd5b6000610a76610a5884600363ffffffff611df216565b610a6a876103e863ffffffff611df216565b9063ffffffff611e5216565b90506000610a8e610a5884600363ffffffff611df216565b9050610ac6620f4240610aba6dffffffffffffffffffffffffffff8b8116908b1663ffffffff611df216565b9063ffffffff611df216565b610ad6838363ffffffff611df216565b1015610b29576040805162461bcd60e51b815260206004820152600c60248201527f556e697377617056323a204b0000000000000000000000000000000000000000604482015290519081900360640190fd5b5050610b3784848888611e94565b60408051838152602081018390528082018d9052606081018c905290516001600160a01b038b169133917fd78ad95fa46c994b6551d0da85fc275fe613ce37657fb8d5e3d130840159d8229181900360800190a350506001600c55505050505050505050565b6040518060400160405280600a81526020017f556e69737761702056320000000000000000000000000000000000000000000081525081565b6008546dffffffffffffffffffffffffffff808216926e0100000000000000000000000000008304909116917c0100000000000000000000000000000000000000000000000000000000900463ffffffff1690565b6000610c38338484612136565b5060015b92915050565b6006546001600160a01b031681565b60005481565b6001600160a01b03831660009081526002602090815260408083203384529091528120547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff14610cfa576001600160a01b0384166000908152600260209081526040808320338452909152902054610cd5908363ffffffff611e5216565b6001600160a01b03851660009081526002602090815260408083203384529091529020555b610d05848484612198565b5060019392505050565b7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b601281565b60035481565b6005546001600160a01b03163314610d9d576040805162461bcd60e51b815260206004820152601460248201527f556e697377617056323a20464f5242494444454e000000000000000000000000604482015290519081900360640190fd5b600680546001600160a01b039384167fffffffffffffffffffffffff00000000000000000000000000000000000000009182161790915560078054929093169116179055565b60095481565b600a5481565b6000600c54600114610e48576040805162461bcd60e51b815260206004820152601160248201527f556e697377617056323a204c4f434b4544000000000000000000000000000000604482015290519081900360640190fd5b6000600c81905580610e58610bd6565b50600654604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519395509193506000926001600160a01b03909116916370a08231916024808301926020929190829003018186803b158015610ec557600080fd5b505afa158015610ed9573d6000803e3d6000fd5b505050506040513d6020811015610eef57600080fd5b5051600754604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519293506000926001600160a01b03909216916370a0823191602480820192602092909190829003018186803b158015610f5b57600080fd5b505afa158015610f6f573d6000803e3d6000fd5b505050506040513d6020811015610f8557600080fd5b505190506000610fab836dffffffffffffffffffffffffffff871663ffffffff611e5216565b90506000610fcf836dffffffffffffffffffffffffffff871663ffffffff611e5216565b90506000610fdd8787612252565b6000549091508061101a576110066103e8610a6a611001878763ffffffff611df216565b6123b7565b985061101560006103e8612409565b611077565b6110746dffffffffffffffffffffffffffff891661103e868463ffffffff611df216565b8161104557fe5b046dffffffffffffffffffffffffffff8916611067868563ffffffff611df216565b8161106e57fe5b0461249f565b98505b600089116110b65760405162461bcd60e51b815260040180806020018281038252602881526020018061273c6028913960400191505060405180910390fd5b6110c08a8a612409565b6110cc86868a8a611e94565b811561110e5760085461110a906dffffffffffffffffffffffffffff808216916e01000000000000000000000000000090041663ffffffff611df216565b600b555b6040805185815260208101859052815133927f4c209b5fc8ad50758f13e2e1088ba56a560dff690a1c6fef26394f4c03821c4f928290030190a250506001600c5550949695505050505050565b60016020526000908152604090205481565b600b5481565b60046020526000908152604090205481565b600080600c546001146111df576040805162461bcd60e51b815260206004820152601160248201527f556e697377617056323a204c4f434b4544000000000000000000000000000000604482015290519081900360640190fd5b6000600c819055806111ef610bd6565b50600654600754604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519496509294506001600160a01b039182169391169160009184916370a08231916024808301926020929190829003018186803b15801561126457600080fd5b505afa158015611278573d6000803e3d6000fd5b505050506040513d602081101561128e57600080fd5b5051604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519192506000916001600160a01b038516916370a08231916024808301926020929190829003018186803b1580156112f557600080fd5b505afa158015611309573d6000803e3d6000fd5b505050506040513d602081101561131f57600080fd5b50513060009081526001602052604081205491925061133e8888612252565b60005490915080611355848763ffffffff611df216565b8161135c57fe5b049a5080611370848663ffffffff611df216565b8161137757fe5b04995060008b11801561138a575060008a115b6113c55760405162461bcd60e51b81526004018080602001828103825260288152602001806127146028913960400191505060405180910390fd5b6113cf30846124b5565b6113da878d8d611c0c565b6113e5868d8c611c0c565b604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290516001600160a01b038916916370a08231916024808301926020929190829003018186803b15801561144457600080fd5b505afa158015611458573d6000803e3d6000fd5b505050506040513d602081101561146e57600080fd5b5051604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519196506001600160a01b038816916370a0823191602480820192602092909190829003018186803b1580156114d357600080fd5b505afa1580156114e7573d6000803e3d6000fd5b505050506040513d60208110156114fd57600080fd5b5051935061150d85858b8b611e94565b811561154f5760085461154b906dffffffffffffffffffffffffffff808216916e01000000000000000000000000000090041663ffffffff611df216565b600b555b604080518c8152602081018c905281516001600160a01b038f169233927fdccd412f0b1252819cb1fd330b93224ca42612892bb3f4f789976e6d81936496929081900390910190a35050505050505050506001600c81905550915091565b6040518060400160405280600681526020017f554e492d5632000000000000000000000000000000000000000000000000000081525081565b6000610c38338484612198565b6103e881565b600c54600114611650576040805162461bcd60e51b815260206004820152601160248201527f556e697377617056323a204c4f434b4544000000000000000000000000000000604482015290519081900360640190fd5b6000600c55600654600754600854604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290516001600160a01b03948516949093169261171f928592879261171a926dffffffffffffffffffffffffffff169185916370a0823191602480820192602092909190829003018186803b1580156116e257600080fd5b505afa1580156116f6573d6000803e3d6000fd5b505050506040513d602081101561170c57600080fd5b50519063ffffffff611e5216565b611c0c565b600854604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290516117b1928492879261171a926e01000000000000000000000000000090046dffffffffffffffffffffffffffff16916001600160a01b038616916370a0823191602480820192602092909190829003018186803b1580156116e257600080fd5b50506001600c5550565b6005546001600160a01b031681565b6007546001600160a01b031681565b4284101561182e576040805162461bcd60e51b815260206004820152601260248201527f556e697377617056323a20455850495245440000000000000000000000000000604482015290519081900360640190fd5b6003546001600160a01b0380891660008181526004602090815260408083208054600180820190925582517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98186015280840196909652958d166060860152608085018c905260a085019590955260c08085018b90528151808603909101815260e0850182528051908301207f19010000000000000000000000000000000000000000000000000000000000006101008601526101028501969096526101228085019690965280518085039096018652610142840180825286519683019690962095839052610162840180825286905260ff89166101828501526101a284018890526101c28401879052519193926101e2808201937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081019281900390910190855afa158015611982573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe001519150506001600160a01b038116158015906119d65750886001600160a01b0316816001600160a01b0316145b611a27576040805162461bcd60e51b815260206004820152601c60248201527f556e697377617056323a20494e56414c49445f5349474e415455524500000000604482015290519081900360640190fd5b611a32898989612136565b505050505050505050565b600260209081526000928352604080842090915290825290205481565b600c54600114611ab1576040805162461bcd60e51b815260206004820152601160248201527f556e697377617056323a204c4f434b4544000000000000000000000000000000604482015290519081900360640190fd5b6000600c55600654604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051611c05926001600160a01b0316916370a08231916024808301926020929190829003018186803b158015611b1b57600080fd5b505afa158015611b2f573d6000803e3d6000fd5b505050506040513d6020811015611b4557600080fd5b5051600754604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290516001600160a01b03909216916370a0823191602480820192602092909190829003018186803b158015611bab57600080fd5b505afa158015611bbf573d6000803e3d6000fd5b505050506040513d6020811015611bd557600080fd5b50516008546dffffffffffffffffffffffffffff808216916e010000000000000000000000000000900416611e94565b6001600c55565b604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb000000000000000000000000000000000000000000000000000000001781529251815160009460609489169392918291908083835b60208310611d0557805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09092019160209182019101611cc8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611d67576040519150601f19603f3d011682016040523d82523d6000602084013e611d6c565b606091505b5091509150818015611d9a575080511580611d9a5750808060200190516020811015611d9757600080fd5b50515b611deb576040805162461bcd60e51b815260206004820152601a60248201527f556e697377617056323a205452414e534645525f4641494c4544000000000000604482015290519081900360640190fd5b5050505050565b600082611e0157506000610c3c565b82820282848281611e0e57fe5b0414611e4b5760405162461bcd60e51b81526004018080602001828103825260218152602001806127646021913960400191505060405180910390fd5b9392505050565b6000611e4b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612553565b6dffffffffffffffffffffffffffff8411801590611ec057506dffffffffffffffffffffffffffff8311155b611f11576040805162461bcd60e51b815260206004820152601360248201527f556e697377617056323a204f564552464c4f5700000000000000000000000000604482015290519081900360640190fd5b60085463ffffffff428116917c010000000000000000000000000000000000000000000000000000000090048116820390811615801590611f6157506dffffffffffffffffffffffffffff841615155b8015611f7c57506dffffffffffffffffffffffffffff831615155b1561202c578063ffffffff16611fbf85611f95866125ea565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff169063ffffffff61260e16565b600980547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff929092169290920201905563ffffffff8116611fff84611f95876125ea565b600a80547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff92909216929092020190555b600880547fffffffffffffffffffffffffffffffffffff0000000000000000000000000000166dffffffffffffffffffffffffffff888116919091177fffffffff0000000000000000000000000000ffffffffffffffffffffffffffff166e0100000000000000000000000000008883168102919091177bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167c010000000000000000000000000000000000000000000000000000000063ffffffff871602179283905560408051848416815291909304909116602082015281517f1c411e9a96e071241c2f21f7726b17ae89e3cab4c78be50e062b03a9fffbbad1929181900390910190a1505050505050565b6001600160a01b03808416600081815260026020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166000908152600160205260409020546121c1908263ffffffff611e5216565b6001600160a01b0380851660009081526001602052604080822093909355908416815220546121f6908263ffffffff61264f16565b6001600160a01b0380841660008181526001602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600080600560009054906101000a90046001600160a01b03166001600160a01b031663017e7e586040518163ffffffff1660e01b815260040160206040518083038186803b1580156122a357600080fd5b505afa1580156122b7573d6000803e3d6000fd5b505050506040513d60208110156122cd57600080fd5b5051600b546001600160a01b0382161580159450919250906123a357801561239e5760006123176110016dffffffffffffffffffffffffffff88811690881663ffffffff611df216565b90506000612324836123b7565b90508082111561239b576000612352612343848463ffffffff611e5216565b6000549063ffffffff611df216565b905060006123778361236b86600563ffffffff611df216565b9063ffffffff61264f16565b9050600081838161238457fe5b0490508015612397576123978782612409565b5050505b50505b6123af565b80156123af576000600b555b505092915050565b600060038211156123fa575080600160028204015b818110156123f4578091506002818285816123e357fe5b0401816123ec57fe5b0490506123cc565b50612404565b8115612404575060015b919050565b60005461241c908263ffffffff61264f16565b60009081556001600160a01b038316815260016020526040902054612447908263ffffffff61264f16565b6001600160a01b03831660008181526001602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b60008183106124ae5781611e4b565b5090919050565b6001600160a01b0382166000908152600160205260409020546124de908263ffffffff611e5216565b6001600160a01b0383166000908152600160205260408120919091555461250b908263ffffffff611e5216565b60009081556040805183815290516001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef919081900360200190a35050565b600081848411156125e25760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156125a757818101518382015260200161258f565b50505050905090810190601f1680156125d45780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6dffffffffffffffffffffffffffff166e0100000000000000000000000000000290565b60006dffffffffffffffffffffffffffff82167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff84168161264757fe5b049392505050565b600082820183811015611e4b576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fdfe556e697377617056323a20494e53554646494349454e545f4f55545055545f414d4f554e54556e697377617056323a20494e53554646494349454e545f494e5055545f414d4f554e54556e697377617056323a20494e53554646494349454e545f4c4951554944495459556e697377617056323a20494e53554646494349454e545f4c49515549444954595f4255524e4544556e697377617056323a20494e53554646494349454e545f4c49515549444954595f4d494e544544536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a72315820c274b01bb041f42cdd9d99294b2b4c1efa89ffce7b09e537530e1e84db8b5b4564736f6c63430005100032454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e747261637429a265627a7a723158203074fdbffd18f2ea355dc4466d039b41cde0fe1f3056b941e6f0fc3b54de31b764736f6c63430005100032",
|
|
228
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100be5760003560e01c8063a2e74af611610076578063c9c653961161005b578063c9c65396146101ed578063e6a4390514610228578063f46901ed14610263576100be565b8063a2e74af61461013b578063ba5ad85d14610170576100be565b80631e3dd18b116100a75780631e3dd18b146100fc57806324e43f3d14610119578063574f2ba314610133576100be565b8063017e7e58146100c3578063094b7415146100f4575b600080fd5b6100cb610296565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6100cb6102b2565b6100cb6004803603602081101561011257600080fd5b50356102ce565b610121610302565b60408051918252519081900360200190f35b610121610318565b61016e6004803603602081101561015157600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661031e565b005b6101786103eb565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101b257818101518382015260200161019a565b50505050905090810190601f1680156101df5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100cb6004803603604081101561020357600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81358116916020013516610433565b6100cb6004803603604081101561023e57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81358116916020013516610886565b61016e6004803603602081101561027957600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166108b9565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b60015473ffffffffffffffffffffffffffffffffffffffff1681565b600381815481106102db57fe5b60009182526020909120015473ffffffffffffffffffffffffffffffffffffffff16905081565b600061030c6103eb565b80519060200120905090565b60035490565b60015473ffffffffffffffffffffffffffffffffffffffff1633146103a457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f556e697377617056323a20464f5242494444454e000000000000000000000000604482015290519081900360640190fd5b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6060604051806020016103fd90610986565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe082820381018352601f90910116604052905090565b60008173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156104d057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f556e697377617056323a204944454e544943414c5f4144445245535345530000604482015290519081900360640190fd5b6000808373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161061050d578385610510565b84845b909250905073ffffffffffffffffffffffffffffffffffffffff821661059757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f556e697377617056323a205a45524f5f41444452455353000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff82811660009081526002602090815260408083208585168452909152902054161561063857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f556e697377617056323a20504149525f45584953545300000000000000000000604482015290519081900360640190fd5b60606040518060200161064a90610986565b6020820181038252601f19601f82011660405250905060008383604051602001808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b81526014018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b815260140192505050604051602081830303815290604052805190602001209050808251602084016000f5604080517f485cc95500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8781166004830152868116602483015291519297509087169163485cc9559160448082019260009290919082900301818387803b15801561077757600080fd5b505af115801561078b573d6000803e3d6000fd5b5050505073ffffffffffffffffffffffffffffffffffffffff84811660008181526002602081815260408084208987168086529083528185208054978d167fffffffffffffffffffffffff000000000000000000000000000000000000000098891681179091559383528185208686528352818520805488168517905560038054600181018255958190527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b90950180549097168417909655925483519283529082015281517f0d3648bd0f6ba80134a33ba9275ac585d9d315f0ad8355cddefde31afa28d0e9929181900390910190a35050505092915050565b600260209081526000928352604080842090915290825290205473ffffffffffffffffffffffffffffffffffffffff1681565b60015473ffffffffffffffffffffffffffffffffffffffff16331461093f57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f556e697377617056323a20464f5242494444454e000000000000000000000000604482015290519081900360640190fd5b600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b612910806109948339019056fe60806040526001600c5534801561001557600080fd5b5060405146908060526128be8239604080519182900360520182208282018252600a8352692ab734b9bbb0b8102b1960b11b6020938401528151808301835260018152603160f81b908401528151808401919091527fbfcc8ef98ffbf7b6c3fec7bf5185b566b9863e35a9d83acd49ad6824b5969738818301527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc6606082015260808101949094523060a0808601919091528151808603909101815260c09094019052825192019190912060035550600580546001600160a01b031916331790556127b9806101056000396000f3fe608060405234801561001057600080fd5b50600436106101b95760003560e01c80636a627842116100f9578063ba9a7a5611610097578063d21220a711610071578063d21220a71461054b578063d505accf14610553578063dd62ed3e146105a4578063fff6cae9146105d2576101b9565b8063ba9a7a5614610515578063bc25cf771461051d578063c45a015514610543576101b9565b80637ecebe00116100d35780637ecebe001461047c57806389afcb44146104a257806395d89b41146104e1578063a9059cbb146104e9576101b9565b80636a6278421461042857806370a082311461044e5780637464fc3d14610474576101b9565b806323b872dd116101665780633644e515116101405780633644e515146103e2578063485cc955146103ea5780635909c0d5146104185780635a3d549314610420576101b9565b806323b872dd1461038657806330adf81f146103bc578063313ce567146103c4576101b9565b8063095ea7b311610197578063095ea7b3146103085780630dfe16811461034857806318160ddd1461036c576101b9565b8063022c0d9f146101be57806306fdde031461024c5780630902f1ac146102c9575b600080fd5b61024a600480360360808110156101d457600080fd5b8135916020810135916001600160a01b03604083013516919081019060808101606082013564010000000081111561020b57600080fd5b82018360208201111561021d57600080fd5b8035906020019184600183028401116401000000008311171561023f57600080fd5b5090925090506105da565b005b610254610b9d565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561028e578181015183820152602001610276565b50505050905090810190601f1680156102bb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102d1610bd6565b604080516dffffffffffffffffffffffffffff948516815292909316602083015263ffffffff168183015290519081900360600190f35b6103346004803603604081101561031e57600080fd5b506001600160a01b038135169060200135610c2b565b604080519115158252519081900360200190f35b610350610c42565b604080516001600160a01b039092168252519081900360200190f35b610374610c51565b60408051918252519081900360200190f35b6103346004803603606081101561039c57600080fd5b506001600160a01b03813581169160208101359091169060400135610c57565b610374610d0f565b6103cc610d33565b6040805160ff9092168252519081900360200190f35b610374610d38565b61024a6004803603604081101561040057600080fd5b506001600160a01b0381358116916020013516610d3e565b610374610de3565b610374610de9565b6103746004803603602081101561043e57600080fd5b50356001600160a01b0316610def565b6103746004803603602081101561046457600080fd5b50356001600160a01b031661115b565b61037461116d565b6103746004803603602081101561049257600080fd5b50356001600160a01b0316611173565b6104c8600480360360208110156104b857600080fd5b50356001600160a01b0316611185565b6040805192835260208301919091528051918290030190f35b6102546115ad565b610334600480360360408110156104ff57600080fd5b506001600160a01b0381351690602001356115e6565b6103746115f3565b61024a6004803603602081101561053357600080fd5b50356001600160a01b03166115f9565b6103506117bb565b6103506117ca565b61024a600480360360e081101561056957600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060ff6080820135169060a08101359060c001356117d9565b610374600480360360408110156105ba57600080fd5b506001600160a01b0381358116916020013516611a3d565b61024a611a5a565b600c54600114610631576040805162461bcd60e51b815260206004820152601160248201527f556e697377617056323a204c4f434b4544000000000000000000000000000000604482015290519081900360640190fd5b6000600c55841515806106445750600084115b61067f5760405162461bcd60e51b81526004018080602001828103825260258152602001806126aa6025913960400191505060405180910390fd5b60008061068a610bd6565b5091509150816dffffffffffffffffffffffffffff16871080156106bd5750806dffffffffffffffffffffffffffff1686105b6106f85760405162461bcd60e51b81526004018080602001828103825260218152602001806126f36021913960400191505060405180910390fd5b60065460075460009182916001600160a01b039182169190811690891682148015906107365750806001600160a01b0316896001600160a01b031614155b610787576040805162461bcd60e51b815260206004820152601560248201527f556e697377617056323a20494e56414c49445f544f0000000000000000000000604482015290519081900360640190fd5b8a1561079857610798828a8d611c0c565b89156107a9576107a9818a8c611c0c565b861561086457886001600160a01b03166310d1e85c338d8d8c8c6040518663ffffffff1660e01b815260040180866001600160a01b03166001600160a01b03168152602001858152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b15801561084b57600080fd5b505af115801561085f573d6000803e3d6000fd5b505050505b604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290516001600160a01b038416916370a08231916024808301926020929190829003018186803b1580156108c357600080fd5b505afa1580156108d7573d6000803e3d6000fd5b505050506040513d60208110156108ed57600080fd5b5051604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519195506001600160a01b038316916370a0823191602480820192602092909190829003018186803b15801561095257600080fd5b505afa158015610966573d6000803e3d6000fd5b505050506040513d602081101561097c57600080fd5b5051925060009150506dffffffffffffffffffffffffffff85168a900383116109a65760006109bc565b89856dffffffffffffffffffffffffffff160383035b9050600089856dffffffffffffffffffffffffffff160383116109e05760006109f6565b89856dffffffffffffffffffffffffffff160383035b90506000821180610a075750600081115b610a425760405162461bcd60e51b81526004018080602001828103825260248152602001806126cf6024913960400191505060405180910390fd5b6000610a76610a5884600363ffffffff611df216565b610a6a876103e863ffffffff611df216565b9063ffffffff611e5216565b90506000610a8e610a5884600363ffffffff611df216565b9050610ac6620f4240610aba6dffffffffffffffffffffffffffff8b8116908b1663ffffffff611df216565b9063ffffffff611df216565b610ad6838363ffffffff611df216565b1015610b29576040805162461bcd60e51b815260206004820152600c60248201527f556e697377617056323a204b0000000000000000000000000000000000000000604482015290519081900360640190fd5b5050610b3784848888611e94565b60408051838152602081018390528082018d9052606081018c905290516001600160a01b038b169133917fd78ad95fa46c994b6551d0da85fc275fe613ce37657fb8d5e3d130840159d8229181900360800190a350506001600c55505050505050505050565b6040518060400160405280600a81526020017f556e69737761702056320000000000000000000000000000000000000000000081525081565b6008546dffffffffffffffffffffffffffff808216926e0100000000000000000000000000008304909116917c0100000000000000000000000000000000000000000000000000000000900463ffffffff1690565b6000610c38338484612136565b5060015b92915050565b6006546001600160a01b031681565b60005481565b6001600160a01b03831660009081526002602090815260408083203384529091528120547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff14610cfa576001600160a01b0384166000908152600260209081526040808320338452909152902054610cd5908363ffffffff611e5216565b6001600160a01b03851660009081526002602090815260408083203384529091529020555b610d05848484612198565b5060019392505050565b7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b601281565b60035481565b6005546001600160a01b03163314610d9d576040805162461bcd60e51b815260206004820152601460248201527f556e697377617056323a20464f5242494444454e000000000000000000000000604482015290519081900360640190fd5b600680546001600160a01b039384167fffffffffffffffffffffffff00000000000000000000000000000000000000009182161790915560078054929093169116179055565b60095481565b600a5481565b6000600c54600114610e48576040805162461bcd60e51b815260206004820152601160248201527f556e697377617056323a204c4f434b4544000000000000000000000000000000604482015290519081900360640190fd5b6000600c81905580610e58610bd6565b50600654604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519395509193506000926001600160a01b03909116916370a08231916024808301926020929190829003018186803b158015610ec557600080fd5b505afa158015610ed9573d6000803e3d6000fd5b505050506040513d6020811015610eef57600080fd5b5051600754604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519293506000926001600160a01b03909216916370a0823191602480820192602092909190829003018186803b158015610f5b57600080fd5b505afa158015610f6f573d6000803e3d6000fd5b505050506040513d6020811015610f8557600080fd5b505190506000610fab836dffffffffffffffffffffffffffff871663ffffffff611e5216565b90506000610fcf836dffffffffffffffffffffffffffff871663ffffffff611e5216565b90506000610fdd8787612252565b6000549091508061101a576110066103e8610a6a611001878763ffffffff611df216565b6123b7565b985061101560006103e8612409565b611077565b6110746dffffffffffffffffffffffffffff891661103e868463ffffffff611df216565b8161104557fe5b046dffffffffffffffffffffffffffff8916611067868563ffffffff611df216565b8161106e57fe5b0461249f565b98505b600089116110b65760405162461bcd60e51b815260040180806020018281038252602881526020018061273c6028913960400191505060405180910390fd5b6110c08a8a612409565b6110cc86868a8a611e94565b811561110e5760085461110a906dffffffffffffffffffffffffffff808216916e01000000000000000000000000000090041663ffffffff611df216565b600b555b6040805185815260208101859052815133927f4c209b5fc8ad50758f13e2e1088ba56a560dff690a1c6fef26394f4c03821c4f928290030190a250506001600c5550949695505050505050565b60016020526000908152604090205481565b600b5481565b60046020526000908152604090205481565b600080600c546001146111df576040805162461bcd60e51b815260206004820152601160248201527f556e697377617056323a204c4f434b4544000000000000000000000000000000604482015290519081900360640190fd5b6000600c819055806111ef610bd6565b50600654600754604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519496509294506001600160a01b039182169391169160009184916370a08231916024808301926020929190829003018186803b15801561126457600080fd5b505afa158015611278573d6000803e3d6000fd5b505050506040513d602081101561128e57600080fd5b5051604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519192506000916001600160a01b038516916370a08231916024808301926020929190829003018186803b1580156112f557600080fd5b505afa158015611309573d6000803e3d6000fd5b505050506040513d602081101561131f57600080fd5b50513060009081526001602052604081205491925061133e8888612252565b60005490915080611355848763ffffffff611df216565b8161135c57fe5b049a5080611370848663ffffffff611df216565b8161137757fe5b04995060008b11801561138a575060008a115b6113c55760405162461bcd60e51b81526004018080602001828103825260288152602001806127146028913960400191505060405180910390fd5b6113cf30846124b5565b6113da878d8d611c0c565b6113e5868d8c611c0c565b604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290516001600160a01b038916916370a08231916024808301926020929190829003018186803b15801561144457600080fd5b505afa158015611458573d6000803e3d6000fd5b505050506040513d602081101561146e57600080fd5b5051604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290519196506001600160a01b038816916370a0823191602480820192602092909190829003018186803b1580156114d357600080fd5b505afa1580156114e7573d6000803e3d6000fd5b505050506040513d60208110156114fd57600080fd5b5051935061150d85858b8b611e94565b811561154f5760085461154b906dffffffffffffffffffffffffffff808216916e01000000000000000000000000000090041663ffffffff611df216565b600b555b604080518c8152602081018c905281516001600160a01b038f169233927fdccd412f0b1252819cb1fd330b93224ca42612892bb3f4f789976e6d81936496929081900390910190a35050505050505050506001600c81905550915091565b6040518060400160405280600681526020017f554e492d5632000000000000000000000000000000000000000000000000000081525081565b6000610c38338484612198565b6103e881565b600c54600114611650576040805162461bcd60e51b815260206004820152601160248201527f556e697377617056323a204c4f434b4544000000000000000000000000000000604482015290519081900360640190fd5b6000600c55600654600754600854604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290516001600160a01b03948516949093169261171f928592879261171a926dffffffffffffffffffffffffffff169185916370a0823191602480820192602092909190829003018186803b1580156116e257600080fd5b505afa1580156116f6573d6000803e3d6000fd5b505050506040513d602081101561170c57600080fd5b50519063ffffffff611e5216565b611c0c565b600854604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290516117b1928492879261171a926e01000000000000000000000000000090046dffffffffffffffffffffffffffff16916001600160a01b038616916370a0823191602480820192602092909190829003018186803b1580156116e257600080fd5b50506001600c5550565b6005546001600160a01b031681565b6007546001600160a01b031681565b4284101561182e576040805162461bcd60e51b815260206004820152601260248201527f556e697377617056323a20455850495245440000000000000000000000000000604482015290519081900360640190fd5b6003546001600160a01b0380891660008181526004602090815260408083208054600180820190925582517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98186015280840196909652958d166060860152608085018c905260a085019590955260c08085018b90528151808603909101815260e0850182528051908301207f19010000000000000000000000000000000000000000000000000000000000006101008601526101028501969096526101228085019690965280518085039096018652610142840180825286519683019690962095839052610162840180825286905260ff89166101828501526101a284018890526101c28401879052519193926101e2808201937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081019281900390910190855afa158015611982573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe001519150506001600160a01b038116158015906119d65750886001600160a01b0316816001600160a01b0316145b611a27576040805162461bcd60e51b815260206004820152601c60248201527f556e697377617056323a20494e56414c49445f5349474e415455524500000000604482015290519081900360640190fd5b611a32898989612136565b505050505050505050565b600260209081526000928352604080842090915290825290205481565b600c54600114611ab1576040805162461bcd60e51b815260206004820152601160248201527f556e697377617056323a204c4f434b4544000000000000000000000000000000604482015290519081900360640190fd5b6000600c55600654604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051611c05926001600160a01b0316916370a08231916024808301926020929190829003018186803b158015611b1b57600080fd5b505afa158015611b2f573d6000803e3d6000fd5b505050506040513d6020811015611b4557600080fd5b5051600754604080517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290516001600160a01b03909216916370a0823191602480820192602092909190829003018186803b158015611bab57600080fd5b505afa158015611bbf573d6000803e3d6000fd5b505050506040513d6020811015611bd557600080fd5b50516008546dffffffffffffffffffffffffffff808216916e010000000000000000000000000000900416611e94565b6001600c55565b604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb000000000000000000000000000000000000000000000000000000001781529251815160009460609489169392918291908083835b60208310611d0557805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09092019160209182019101611cc8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611d67576040519150601f19603f3d011682016040523d82523d6000602084013e611d6c565b606091505b5091509150818015611d9a575080511580611d9a5750808060200190516020811015611d9757600080fd5b50515b611deb576040805162461bcd60e51b815260206004820152601a60248201527f556e697377617056323a205452414e534645525f4641494c4544000000000000604482015290519081900360640190fd5b5050505050565b600082611e0157506000610c3c565b82820282848281611e0e57fe5b0414611e4b5760405162461bcd60e51b81526004018080602001828103825260218152602001806127646021913960400191505060405180910390fd5b9392505050565b6000611e4b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612553565b6dffffffffffffffffffffffffffff8411801590611ec057506dffffffffffffffffffffffffffff8311155b611f11576040805162461bcd60e51b815260206004820152601360248201527f556e697377617056323a204f564552464c4f5700000000000000000000000000604482015290519081900360640190fd5b60085463ffffffff428116917c010000000000000000000000000000000000000000000000000000000090048116820390811615801590611f6157506dffffffffffffffffffffffffffff841615155b8015611f7c57506dffffffffffffffffffffffffffff831615155b1561202c578063ffffffff16611fbf85611f95866125ea565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff169063ffffffff61260e16565b600980547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff929092169290920201905563ffffffff8116611fff84611f95876125ea565b600a80547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff92909216929092020190555b600880547fffffffffffffffffffffffffffffffffffff0000000000000000000000000000166dffffffffffffffffffffffffffff888116919091177fffffffff0000000000000000000000000000ffffffffffffffffffffffffffff166e0100000000000000000000000000008883168102919091177bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167c010000000000000000000000000000000000000000000000000000000063ffffffff871602179283905560408051848416815291909304909116602082015281517f1c411e9a96e071241c2f21f7726b17ae89e3cab4c78be50e062b03a9fffbbad1929181900390910190a1505050505050565b6001600160a01b03808416600081815260026020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166000908152600160205260409020546121c1908263ffffffff611e5216565b6001600160a01b0380851660009081526001602052604080822093909355908416815220546121f6908263ffffffff61264f16565b6001600160a01b0380841660008181526001602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600080600560009054906101000a90046001600160a01b03166001600160a01b031663017e7e586040518163ffffffff1660e01b815260040160206040518083038186803b1580156122a357600080fd5b505afa1580156122b7573d6000803e3d6000fd5b505050506040513d60208110156122cd57600080fd5b5051600b546001600160a01b0382161580159450919250906123a357801561239e5760006123176110016dffffffffffffffffffffffffffff88811690881663ffffffff611df216565b90506000612324836123b7565b90508082111561239b576000612352612343848463ffffffff611e5216565b6000549063ffffffff611df216565b905060006123778361236b86600563ffffffff611df216565b9063ffffffff61264f16565b9050600081838161238457fe5b0490508015612397576123978782612409565b5050505b50505b6123af565b80156123af576000600b555b505092915050565b600060038211156123fa575080600160028204015b818110156123f4578091506002818285816123e357fe5b0401816123ec57fe5b0490506123cc565b50612404565b8115612404575060015b919050565b60005461241c908263ffffffff61264f16565b60009081556001600160a01b038316815260016020526040902054612447908263ffffffff61264f16565b6001600160a01b03831660008181526001602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b60008183106124ae5781611e4b565b5090919050565b6001600160a01b0382166000908152600160205260409020546124de908263ffffffff611e5216565b6001600160a01b0383166000908152600160205260408120919091555461250b908263ffffffff611e5216565b60009081556040805183815290516001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef919081900360200190a35050565b600081848411156125e25760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156125a757818101518382015260200161258f565b50505050905090810190601f1680156125d45780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6dffffffffffffffffffffffffffff166e0100000000000000000000000000000290565b60006dffffffffffffffffffffffffffff82167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff84168161264757fe5b049392505050565b600082820183811015611e4b576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fdfe556e697377617056323a20494e53554646494349454e545f4f55545055545f414d4f554e54556e697377617056323a20494e53554646494349454e545f494e5055545f414d4f554e54556e697377617056323a20494e53554646494349454e545f4c4951554944495459556e697377617056323a20494e53554646494349454e545f4c49515549444954595f4255524e4544556e697377617056323a20494e53554646494349454e545f4c49515549444954595f4d494e544544536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a72315820c274b01bb041f42cdd9d99294b2b4c1efa89ffce7b09e537530e1e84db8b5b4564736f6c63430005100032454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e747261637429a265627a7a723158203074fdbffd18f2ea355dc4466d039b41cde0fe1f3056b941e6f0fc3b54de31b764736f6c63430005100032",
|
|
229
229
|
"sourceMap": "104:2334:37:-;;;408:84;8:9:-1;5:2;;;30:1;27;20:12;5:2;408:84:37;;;;;;;;;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;408:84:37;459:11;:26;;-1:-1:-1;;;;;;459:26:37;-1:-1:-1;;;;;459:26:37;;;;;;;;;104:2334;;;-1:-1:-1;104:2334:37;;",
|
|
230
230
|
"deployedSourceMap": "104:2334:37:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;104:2334:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;157:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;183:26;;;:::i;284:25::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;284:25:37;;:::i;1983:222::-;;;:::i;:::-;;;;;;;;;;;;;;;;498:94;;;:::i;1811:166::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1811:166:37;;;;:::i;:::-;;2211:225;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;2211:225:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;598:1059;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;598:1059:37;;;;;;;;;;;:::i;216:62::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;216:62:37;;;;;;;;;;;:::i;1663:142::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1663:142:37;;;;:::i;157:20::-;;;;;;:::o;183:26::-;;;;;;:::o;284:25::-;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;284:25:37;:::o;1983:222::-;2037:7;2180:17;:15;:17::i;:::-;2170:28;;;;;;2163:35;;1983:222;:::o;498:94::-;570:8;:15;498:94;:::o;1811:166::-;1898:11;;;;1884:10;:25;1876:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1944:11;:26;;;;;;;;;;;;;;;1811:166::o;2211:225::-;2259:12;2397:32;;;;;;;;:::i;:::-;21:26:-1;;;;;;7:41;;87:2;69:12;;;65:26;61:2;54:38;34:5;-1:-1;2211:225:37;:::o;598:1059::-;668:12;710:6;700:16;;:6;:16;;;;692:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;762:14;778;805:6;796:15;;:6;:15;;;:53;;834:6;842;796:53;;;815:6;823;796:53;761:88;;-1:-1:-1;761:88:37;-1:-1:-1;867:20:37;;;859:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;933:37;:15;;;968:1;933:15;;;:7;:15;;;;;;;;:23;;;;;;;;;;;;:37;925:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1037:21;1061:32;;;;;;;;:::i;:::-;41:4:-1;34:5;30:16;25:3;21:26;14:5;7:41;87:2;83:7;78:2;73:3;69:12;65:26;61:2;54:38;1061:32:37;1037:56;;1103:12;1145:6;1153;1128:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1128:32:37;;;1118:43;;;;;;1103:58;;1303:4;1292:8;1286:15;1281:2;1271:8;1267:17;1264:1;1256:52;1327:46;;;;;;:30;:46;;;;;;;;;;;;;;;;1248:60;;-1:-1:-1;1327:30:37;;;;;;:46;;;;;-1:-1:-1;;1327:46:37;;;;;;;;-1:-1:-1;1327:30:37;:46;;;5:2:-1;;;;30:1;27;20:12;5:2;1327:46:37;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;;;1383:15:37;;;;;;;;:7;:15;;;;;;;;:23;;;;;;;;;;;;:30;;;;;;;;;;;;;;1423:15;;;;;;:23;;;;;;;;:30;;;;;;;;1508:8;27:10:-1;;-1:-1;23:18;;45:23;;1508:19:37;;;;;;;;;;;;;;;;;;1625:15;;1542:108;;;;;;;;;;;;;;;;;;;;;;598:1059;;;;;;;;:::o;216:62::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1663:142::-;1738:11;;;;1724:10;:25;1716:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1784:5;:14;;;;;;;;;;;;;;;1663:142::o;104:2334::-;;;;;;;;:::o",
|
|
231
231
|
"source": "pragma solidity ^0.5.16;\n\nimport \"./interfaces/IUniswapV2Factory.sol\";\n\nimport \"./UniswapV2Pair.sol\";\n\n\ncontract UniswapV2Factory is IUniswapV2Factory {\n address public feeTo;\n address public feeToSetter;\n\n mapping(address => mapping(address => address)) public getPair;\n address[] public allPairs;\n\n event PairCreated(address indexed token0, address indexed token1, address pair, uint);\n\n constructor(address _feeToSetter) public {\n feeToSetter = _feeToSetter;\n }\n\n function allPairsLength() external view returns (uint) {\n return allPairs.length;\n }\n\n function createPair(address tokenA, address tokenB) external returns (address pair) {\n require(tokenA != tokenB, \"UniswapV2: IDENTICAL_ADDRESSES\");\n (address token0, address token1) = tokenA < tokenB ? (tokenA, tokenB) : (tokenB, tokenA);\n require(token0 != address(0), \"UniswapV2: ZERO_ADDRESS\");\n require(getPair[token0][token1] == address(0), \"UniswapV2: PAIR_EXISTS\"); // single check is sufficient\n bytes memory bytecode = type(UniswapV2Pair).creationCode;\n bytes32 salt = keccak256(abi.encodePacked(token0, token1));\n // solium-disable security/no-inline-assembly\n assembly {\n pair := create2(0, add(bytecode, 32), mload(bytecode), salt)\n }\n UniswapV2Pair(pair).initialize(token0, token1);\n getPair[token0][token1] = pair;\n getPair[token1][token0] = pair; // populate mapping in the reverse direction\n allPairs.push(pair);\n emit PairCreated(\n token0,\n token1,\n pair,\n allPairs.length\n );\n }\n\n function setFeeTo(address _feeTo) external {\n require(msg.sender == feeToSetter, \"UniswapV2: FORBIDDEN\");\n feeTo = _feeTo;\n }\n\n function setFeeToSetter(address _feeToSetter) external {\n require(msg.sender == feeToSetter, \"UniswapV2: FORBIDDEN\");\n feeToSetter = _feeToSetter;\n }\n\n function getPairInitCodeHash() external pure returns (bytes32) {\n // This function is not in the IUniswapV2Factory interface because it does not exist in production\n return keccak256(getPairInitCode());\n }\n\n function getPairInitCode() public pure returns (bytes memory) {\n // This function is not in the IUniswapV2Factory interface because it does not exist in production\n return type(UniswapV2Pair).creationCode;\n }\n}\n",
|
|
232
|
-
"sourcePath": "/
|
|
232
|
+
"sourcePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/external/uniswap-v2/UniswapV2Factory.sol",
|
|
233
233
|
"ast": {
|
|
234
|
-
"absolutePath": "/
|
|
234
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/external/uniswap-v2/UniswapV2Factory.sol",
|
|
235
235
|
"exportedSymbols": {
|
|
236
236
|
"UniswapV2Factory": [
|
|
237
237
|
18247
|
|
@@ -252,7 +252,7 @@
|
|
|
252
252
|
"src": "0:24:37"
|
|
253
253
|
},
|
|
254
254
|
{
|
|
255
|
-
"absolutePath": "/
|
|
255
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/external/uniswap-v2/interfaces/IUniswapV2Factory.sol",
|
|
256
256
|
"file": "./interfaces/IUniswapV2Factory.sol",
|
|
257
257
|
"id": 18033,
|
|
258
258
|
"nodeType": "ImportDirective",
|
|
@@ -263,7 +263,7 @@
|
|
|
263
263
|
"unitAlias": ""
|
|
264
264
|
},
|
|
265
265
|
{
|
|
266
|
-
"absolutePath": "/
|
|
266
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/external/uniswap-v2/UniswapV2Pair.sol",
|
|
267
267
|
"file": "./UniswapV2Pair.sol",
|
|
268
268
|
"id": 18034,
|
|
269
269
|
"nodeType": "ImportDirective",
|
|
@@ -3146,7 +3146,7 @@
|
|
|
3146
3146
|
"src": "0:2439:37"
|
|
3147
3147
|
},
|
|
3148
3148
|
"legacyAST": {
|
|
3149
|
-
"absolutePath": "/
|
|
3149
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/external/uniswap-v2/UniswapV2Factory.sol",
|
|
3150
3150
|
"exportedSymbols": {
|
|
3151
3151
|
"UniswapV2Factory": [
|
|
3152
3152
|
18247
|
|
@@ -3167,7 +3167,7 @@
|
|
|
3167
3167
|
"src": "0:24:37"
|
|
3168
3168
|
},
|
|
3169
3169
|
{
|
|
3170
|
-
"absolutePath": "/
|
|
3170
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/external/uniswap-v2/interfaces/IUniswapV2Factory.sol",
|
|
3171
3171
|
"file": "./interfaces/IUniswapV2Factory.sol",
|
|
3172
3172
|
"id": 18033,
|
|
3173
3173
|
"nodeType": "ImportDirective",
|
|
@@ -3178,7 +3178,7 @@
|
|
|
3178
3178
|
"unitAlias": ""
|
|
3179
3179
|
},
|
|
3180
3180
|
{
|
|
3181
|
-
"absolutePath": "/
|
|
3181
|
+
"absolutePath": "/Users/corey/Leavitt-Innovations/dolomite-v2-protocol/contracts/external/uniswap-v2/UniswapV2Pair.sol",
|
|
3182
3182
|
"file": "./UniswapV2Pair.sol",
|
|
3183
3183
|
"id": 18034,
|
|
3184
3184
|
"nodeType": "ImportDirective",
|
|
@@ -6101,11 +6101,11 @@
|
|
|
6101
6101
|
},
|
|
6102
6102
|
"links": {},
|
|
6103
6103
|
"address": "0x5017A545b09ab9a30499DE7F431DF0855bCb7275",
|
|
6104
|
-
"transactionHash": "
|
|
6104
|
+
"transactionHash": "0x47e415a4e45c5e2f40eece2b819e221a024dda006e7a1534b82d899cdb31ee22"
|
|
6105
6105
|
}
|
|
6106
6106
|
},
|
|
6107
6107
|
"schemaVersion": "3.0.23",
|
|
6108
|
-
"updatedAt": "2022-02-
|
|
6108
|
+
"updatedAt": "2022-02-07T07:18:45.101Z",
|
|
6109
6109
|
"devdoc": {
|
|
6110
6110
|
"methods": {}
|
|
6111
6111
|
},
|