4 txs
5 calls
constructor
constructor(address _stakeApy, address _nftAddress, address _oracleContract, address _networkContract, address _commissionContract, address _tokenAddress, address _pointAddress)
functions
calculatePointEarnedStake
viewfunction calculatePointEarnedStake(uint256 _stakeId) view returns (uint256)
calculateTokenEarnedStake
viewfunction calculateTokenEarnedStake(uint256 _stakeId) view returns (uint256)
checkCanClaim
viewfunction checkCanClaim(uint256 _stakeId) view returns (bool)
commissionContract
viewfunction commissionContract() view returns (address)
conditionClaimNftCommission
viewfunction conditionClaimNftCommission(uint8) view returns (uint256)
getDetailStake
viewfunction getDetailStake(uint256 _stakeId) view returns (tuple)
interestCommissionNftPercent
viewfunction interestCommissionNftPercent(uint8) view returns (uint16)
networkAddress
viewfunction networkAddress() view returns (address)
nftAddress
viewfunction nftAddress() view returns (address)
oracleContract
viewfunction oracleContract() view returns (address)
owner
viewfunction owner() view returns (address)
pointAddress
viewfunction pointAddress() view returns (address)
stakeApy
viewfunction stakeApy() view returns (address)
stakeIndex
viewfunction stakeIndex() view returns (uint256)
systemWallet
viewfunction systemWallet() view returns (address)
timeOpenStaking
viewfunction timeOpenStaking() view returns (uint256)
tokenAddress
viewfunction tokenAddress() view returns (address)
tokenDecimal
viewfunction tokenDecimal() view returns (uint256)
totalUserClaimedPoint
viewfunction totalUserClaimedPoint(address) view returns (uint256)
totalUserClaimedToken
viewfunction totalUserClaimedToken(address) view returns (uint256)
totalUserClaimedUsd
viewfunction totalUserClaimedUsd(address) view returns (uint256)
claim
nonpayablefunction claim(uint256 _stakeId)
claimAll
nonpayablefunction claimAll(uint256[] _stakeIds)
onERC721Received
nonpayablefunction onERC721Received(address, address, uint256, bytes) returns (bytes4)
recoverLostBNB
nonpayablefunction recoverLostBNB()
renounceOwnership
nonpayablefunction renounceOwnership()
setCommissionAddress
nonpayablefunction setCommissionAddress(address _commissionContract)
setNetworkAddress
nonpayablefunction setNetworkAddress(address _networkContract)
setNftAddress
nonpayablefunction setNftAddress(address _nftAddress)
setOracleAddress
nonpayablefunction setOracleAddress(address _oracleContract)
setPointAddress
nonpayablefunction setPointAddress(address _pointAddress)
setSystemWallet
nonpayablefunction setSystemWallet(address _newSystemWallet)
setTokenAddress
nonpayablefunction setTokenAddress(address _tokenAddress)
stake
nonpayablefunction stake(uint256 _nftId)
transferMultiNftsEmergency
nonpayablefunction transferMultiNftsEmergency(address[] _receivers, uint256[] _nftIds)
transferNftEmergency
nonpayablefunction transferNftEmergency(address _receiver, uint256 _nftId)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
withdraw
nonpayablefunction withdraw(uint256 _stakeId)
withdrawTokenEmergency
nonpayablefunction withdrawTokenEmergency(address _token, uint256 _amount)
events
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
Staked
event Staked(uint256 indexed id, address indexed staker, uint256 indexed nftId, uint256 stakeValueUsd, uint256 startTime)
Withdraw
event Withdraw(uint256 nftId)
errors
No errors.
creation bytecode
0x60806040526364b816906001908155670de0b6b3a76400006002556003805460ff191681179055600455600580546001600160a01b03191673d45e7a14dd38376dc3862f5dac3dc4532b2b67ba1790556000600d553480156200006157600080fd5b506040516200350c3803806200350c83398101604081905262000084916200028a565b6200008f336200021d565b600680546001600160a01b03199081166001600160a01b038a811691909117909255600780548216888416179055600880548216868416179055600980548216878416179055600a80548216898416179055600b80548216858416179055600c805490911691831691909117905562000178601260205260007f71a67924699a20698523213e55fe499d539379d7769cd5567e2c45d583f815a38190557f8e1fee8c88a9e04123b21e90cae2727a7715bf522a1e46eb5934ccd05203a6b2819055600381527f0f36ad39aee03e7108cc48f54934702a5f0d4066f10344cebf8198978d86976a55565b6200021060136020527f4155c2f711f2cdd34f8262ab8fb9b7020a700fe7b6948222152f7670d1fdf34d805461ffff199081166105dc179091557f0b9d2c0c271bb30544eb78c59bdaebdae2728e5f65814c07768a0abe90ed1923805482166103e817905560036000527f0d2a6872ef858a7f8ead18dc4f3f2e8d35c853d47e2816cbb9cdd49202554e0c80549091166101f4179055565b505050505050506200031f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80516001600160a01b03811681146200028557600080fd5b919050565b600080600080600080600060e0888a031215620002a657600080fd5b620002b1886200026d565b9650620002c1602089016200026d565b9550620002d1604089016200026d565b9450620002e1606089016200026d565b9350620002f1608089016200026d565b92506200030160a089016200026d565b91506200031160c089016200026d565b905092959891949750929550565b6131dd806200032f6000396000f3fe6080604052600436106102345760003560e01c806373c574ba1161012e578063ad7d3a72116100ab578063d69e1bad1161006f578063d69e1bad14610710578063da8909e514610730578063e41203df14610750578063ec1406ea14610770578063f2fde38b1461079057600080fd5b8063ad7d3a7214610656578063b4346a4a14610676578063bece753214610696578063c99f4929146106b6578063d3189736146106cc57600080fd5b80638da5cb5b116100f25780638da5cb5b146105cd578063941d82d6146105eb57806397e3b781146106015780639d76ea5814610616578063a694fc3a1461063657600080fd5b806373c574ba146104f65780637475740e1461052657806375fc655c14610553578063830ba65e14610573578063841622c6146105a057600080fd5b80633d61aba8116101bc5780635bf8633a116101805780635bf8633a1461046b5780635caed0291461048b57806368127b71146104a15780636ef85086146104c1578063715018a6146104e157600080fd5b80633d61aba8146103be57806340fff80c146103de578063466e515c146103fe5780634c69c00f1461042b5780635b4498fb1461044b57600080fd5b806326a4e8d21161020357806326a4e8d21461030657806328c77820146103265780632e1a7d4d14610346578063379607f5146103665780633a0c4f801461038657600080fd5b8063014db5091461024057806305f5dc95146102805780630b102d1a146102a2578063150b7a02146102c257600080fd5b3661023b57005b600080fd5b34801561024c57600080fd5b5061026d61025b366004612b59565b60116020526000908152604090205481565b6040519081526020015b60405180910390f35b34801561028c57600080fd5b506102a061029b366004612b59565b6107b0565b005b3480156102ae57600080fd5b506102a06102bd366004612b59565b610835565b3480156102ce57600080fd5b506102ed6102dd366004612bc4565b630a85bd0160e11b949350505050565b6040516001600160e01b03199091168152602001610277565b34801561031257600080fd5b506102a0610321366004612b59565b6108b5565b34801561033257600080fd5b506102a0610341366004612d17565b610935565b34801561035257600080fd5b506102a0610361366004612d54565b6109f3565b34801561037257600080fd5b506102a0610381366004612d54565b610c16565b34801561039257600080fd5b50600c546103a6906001600160a01b031681565b6040516001600160a01b039091168152602001610277565b3480156103ca57600080fd5b506102a06103d9366004612d6d565b610c4e565b3480156103ea57600080fd5b506102a06103f9366004612b59565b610e08565b34801561040a57600080fd5b5061041e610419366004612d54565b610e88565b6040516102779190612d99565b34801561043757600080fd5b506102a0610446366004612b59565b610f98565b34801561045757600080fd5b506102a0610466366004612b59565b611018565b34801561047757600080fd5b50600a546103a6906001600160a01b031681565b34801561049757600080fd5b5061026d60025481565b3480156104ad57600080fd5b506006546103a6906001600160a01b031681565b3480156104cd57600080fd5b506102a06104dc366004612d6d565b611098565b3480156104ed57600080fd5b506102a06111d9565b34801561050257600080fd5b50610516610511366004612d54565b6111ed565b6040519015158152602001610277565b34801561053257600080fd5b5061026d610541366004612e3d565b60126020526000908152604090205481565b34801561055f57600080fd5b5061026d61056e366004612d54565b61132e565b34801561057f57600080fd5b5061026d61058e366004612b59565b600f6020526000908152604090205481565b3480156105ac57600080fd5b5061026d6105bb366004612b59565b60106020526000908152604090205481565b3480156105d957600080fd5b506000546001600160a01b03166103a6565b3480156105f757600080fd5b5061026d600d5481565b34801561060d57600080fd5b506102a06114d4565b34801561062257600080fd5b50600b546103a6906001600160a01b031681565b34801561064257600080fd5b506102a0610651366004612d54565b61150a565b34801561066257600080fd5b506005546103a6906001600160a01b031681565b34801561068257600080fd5b5061026d610691366004612d54565b611a0d565b3480156106a257600080fd5b506007546103a6906001600160a01b031681565b3480156106c257600080fd5b5061026d60015481565b3480156106d857600080fd5b506106fd6106e7366004612e3d565b60136020526000908152604090205461ffff1681565b60405161ffff9091168152602001610277565b34801561071c57600080fd5b506009546103a6906001600160a01b031681565b34801561073c57600080fd5b506008546103a6906001600160a01b031681565b34801561075c57600080fd5b506102a061076b366004612e60565b611bbb565b34801561077c57600080fd5b506102a061078b366004612b59565b611c5c565b34801561079c57600080fd5b506102a06107ab366004612b59565b611d02565b6107b8611d7b565b6001600160a01b0381166108135760405162461bcd60e51b815260206004820152601c60248201527f4e46543a20494e56414c4944204e4554574f524b20414444524553530000000060448201526064015b60405180910390fd5b600980546001600160a01b0319166001600160a01b0392909216919091179055565b61083d611d7b565b6001600160a01b0381166108935760405162461bcd60e51b815260206004820152601860248201527f4e46543a20494e56414c4944204e465420414444524553530000000000000000604482015260640161080a565b600a80546001600160a01b0319166001600160a01b0392909216919091179055565b6108bd611d7b565b6001600160a01b0381166109135760405162461bcd60e51b815260206004820152601a60248201527f4e46543a20494e56414c494420544f4b454e2041444452455353000000000000604482015260640161080a565b600b80546001600160a01b0319166001600160a01b0392909216919091179055565b6004546001146109575760405162461bcd60e51b815260040161080a90612f22565b600060045580516109aa5760405162461bcd60e51b815260206004820152601f60248201527f544f4b454e205354414b453a20494e56414c4944205354414b45204c49535400604482015260640161080a565b60005b81518110156109ea576109d88282815181106109cb576109cb612f51565b6020026020010151611dd5565b806109e281612f7d565b9150506109ad565b50506001600455565b600454600114610a155760405162461bcd60e51b815260040161080a90612f22565b60006004818155828252600e602090815260409283902083516101608101855281548152600182015492810192909252600281015461ffff811694830194909452620100009093046001600160a01b031660608201819052600384015460808301529183015460a0820152600583015460c0820152600683015460e08201526007830154610100820152600883015461012082015260099092015460ff1615156101408301523314610af75760405162461bcd60e51b815260206004820152600b60248201526a5354414b494e473a204f5760a81b604482015260640161080a565b80610140015115610b395760405162461bcd60e51b815260206004820152600c60248201526b5354414b494e473a20434e5760a01b604482015260640161080a565b610b4282611dd5565b600a5460208201516040516323b872dd60e01b815230600482015233602482015260448101919091526001600160a01b03909116906323b872dd90606401600060405180830381600087803b158015610b9a57600080fd5b505af1158015610bae573d6000803e3d6000fd5b5050506000838152600e6020908152604091829020600901805460ff1916600117905583015190517f5b6b431d4476a211bb7d41c20d1aab9ae2321deee0d20be3d9fc9b1093fa6e3d9250610c0591815260200190565b60405180910390a150506001600455565b600454600114610c385760405162461bcd60e51b815260040161080a90612f22565b6000600455610c4681611dd5565b506001600455565b610c56611d7b565b60008111610c975760405162461bcd60e51b815260206004820152600e60248201526d1253959053125108105353d5539560921b604482015260640161080a565b6040516370a0823160e01b815230600482015281906001600160a01b038416906370a082319060240160206040518083038186803b158015610cd857600080fd5b505afa158015610cec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d109190612f98565b1015610d2e5760405162461bcd60e51b815260040161080a90612fb1565b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb90604401602060405180830381600087803b158015610d7657600080fd5b505af1158015610d8a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dae9190612ff5565b610e045760405162461bcd60e51b815260206004820152602160248201527f434f4d4d495353494f4e3a2043414e4e4f5420574954484452415720544f4b456044820152602760f91b606482015260840161080a565b5050565b610e10611d7b565b6001600160a01b038116610e665760405162461bcd60e51b815260206004820152601f60248201527f4e46543a20494e56414c494420434f4d4d495353494f4e204144445245535300604482015260640161080a565b600880546001600160a01b0319166001600160a01b0392909216919091179055565b610ef46040518061016001604052806000815260200160008152602001600061ffff16815260200160006001600160a01b031681526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000151581525090565b506000908152600e602090815260409182902082516101608101845281548152600182015492810192909252600281015461ffff811693830193909352620100009092046001600160a01b0316606082015260038201546080820152600482015460a0820152600582015460c0820152600682015460e08201526007820154610100820152600882015461012082015260099091015460ff16151561014082015290565b610fa0611d7b565b6001600160a01b038116610ff65760405162461bcd60e51b815260206004820152601b60248201527f4e46543a20494e56414c4944204f5241434c4520414444524553530000000000604482015260640161080a565b600780546001600160a01b0319166001600160a01b0392909216919091179055565b611020611d7b565b6001600160a01b0381166110765760405162461bcd60e51b815260206004820152601a60248201527f4e46543a20494e56414c494420544f4b454e2041444452455353000000000000604482015260640161080a565b600c80546001600160a01b0319166001600160a01b0392909216919091179055565b6110a0611d7b565b600a546040516331a9108f60e11b81526004810183905230916001600160a01b031690636352211e9060240160206040518083038186803b1580156110e457600080fd5b505afa1580156110f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061111c9190613017565b6001600160a01b03161461115b5760405162461bcd60e51b815260040161080a90602080825260049082015263533a4e4f60e01b604082015260600190565b600a54604051635c46a7ef60e11b81523060048201526001600160a01b0384811660248301526044820184905260806064830152600060848301529091169063b88d4fde9060a401600060405180830381600087803b1580156111bd57600080fd5b505af11580156111d1573d6000803e3d6000fd5b505050505050565b6111e1611d7b565b6111eb600061233f565b565b6000818152600e6020908152604080832081516101608101835281548152600182015493810193909352600281015461ffff811692840192909252620100009091046001600160a01b03166060830181905260038201546080840152600482015460a0840152600582015460c0840152600682015460e08401526007820154610100840152600882015461012084015260099091015460ff1615156101408301528261129885611a0d565b600854604051637f6408d360e01b81526001600160a01b03858116600483015260248201849052929350839290911690637f6408d39060440160206040518083038186803b1580156112e957600080fd5b505afa1580156112fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113219190612f98565b9190911495945050505050565b6000818152600e6020908152604080832081516101608101835281548152600182015493810193909352600281015461ffff81168484018190526001600160a01b0362010000909204821660608601526003830154608086015260048084015460a0870152600584015460c087015260068085015460e08801526007850154610100880152600885015461012088015260099094015460ff16151561014087015292549351633996033360e01b815292830152620151809392859291169063399603339060240160206040518083038186803b15801561140d57600080fd5b505afa158015611421573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114459190612f98565b90508161014001511561145d57506000949350505050565b60006103e884836002548660800151426114779190613034565b611481919061304b565b61148b919061304b565b611495919061306a565b61149f919061306a565b90508261012001518110156114ba5750600095945050505050565b6101208301516114ca9082613034565b9695505050505050565b6114dc611d7b565b604051339081904780156108fc02916000818181858888f19350505050158015610e04573d6000803e3d6000fd5b60045460011461152c5760405162461bcd60e51b815260040161080a90612f22565b60006004818155600954604051636158993b60e11b815233928101929092526001600160a01b03169063c2b132769060240160206040518083038186803b15801561157657600080fd5b505afa15801561158a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115ae9190613017565b90506001600160a01b0381166115ec5760405162461bcd60e51b815260206004820152600360248201526213929560ea1b604482015260640161080a565b600a546040516331a9108f60e11b81526004810184905233916001600160a01b031690636352211e9060240160206040518083038186803b15801561163057600080fd5b505afa158015611644573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116689190613017565b6001600160a01b0316146116af5760405162461bcd60e51b815260206004820152600e60248201526d4e4654205354414b453a20434e5360901b604482015260640161080a565b600a5460405163e985e9c560e01b81523360048201523060248201526001600160a01b039091169063e985e9c59060440160206040518083038186803b1580156116f857600080fd5b505afa15801561170c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117309190612ff5565b6117625760405162461bcd60e51b8152602060048201526003602482015262533a4160e81b604482015260640161080a565b600a54604051635c46a7ef60e11b81523360048201523060248201526044810184905260806064820152600060848201526001600160a01b039091169063b88d4fde9060a401600060405180830381600087803b1580156117c257600080fd5b505af11580156117d6573d6000803e3d6000fd5b5050600a5460405163249eaeff60e11b815260048101869052600093506001600160a01b03909116915063493d5dfe9060240160206040518083038186803b15801561182157600080fd5b505afa158015611835573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611859919061308c565b600a5460405163a90299b160e01b8152600481018690529192506000916001600160a01b039091169063a90299b19060240160206040518083038186803b1580156118a357600080fd5b505afa1580156118b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118db9190612f98565b9050600d5460016118ec91906130b0565b600d8181556000828152600e60205260408082209384556002938401805461ffff191661ffff881617905582548252808220600101889055825482528082208401805462010000600160b01b0319163362010000021790558254825280822042600390910155915481529081206004015554611968908261304b565b600d80546000908152600e60205260408082206005019390935581548152828120600601819055815481528281206007018190558154815282812060080181905581548152829020600901805460ff19169055549051859133917f94f54bb48cedd45253f4ace35b1e25b1396407c5316b875feafaf710a8a1c48e906119fa9086904290918252602082015260400190565b60405180910390a4505060016004555050565b6000818152600e6020908152604080832081516101608101835281548152600182015493810193909352600281015461ffff81168484018190526001600160a01b0362010000909204821660608601526003830154608086015260048084015460a0870152600584015460c087015260068085015460e08801526007850154610100880152600885015461012088015260099094015460ff1615156101408701529254935163619bdbed60e01b8152928301528492169063619bdbed9060240160206040518083038186803b158015611ae557600080fd5b505afa158015611af9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b1d9190612f98565b905081610140015115611b34575060009392505050565b60006201518061016860646103e8858760c00151886080015142611b589190613034565b611b62919061304b565b611b6c919061304b565b611b76919061306a565b611b80919061306a565b611b8a919061306a565b611b94919061306a565b905060008361010001518211611bab5760006114ca565b6101008401516114ca9083613034565b611bc3611d7b565b8051825114611bfd5760405162461bcd60e51b815260040161080a90602080825260049082015263533a535360e01b604082015260600190565b60005b8151811015611c5757611c45838281518110611c1e57611c1e612f51565b6020026020010151838381518110611c3857611c38612f51565b6020026020010151611098565b80611c4f81612f7d565b915050611c00565b505050565b611c64611d7b565b6001600160a01b03811615801590611c8a57506005546001600160a01b03828116911614155b611ce05760405162461bcd60e51b815260206004820152602160248201527f434f4d4d495353494f4e3a20494e56414c49442053595354454d2057414c4c456044820152601560fa1b606482015260840161080a565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b611d0a611d7b565b6001600160a01b038116611d6f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161080a565b611d788161233f565b50565b6000546001600160a01b031633146111eb5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161080a565b6000611de0826111ed565b9050600181151514611e2c5760405162461bcd60e51b81526020600482015260156024820152745354414b494e473a2043414e4e4f5420434c41494d60581b604482015260640161080a565b6000611e3783611a0d565b90506000611e448461132e565b6000858152600e602090815260409182902082516101608101845281548152600182015492810192909252600281015461ffff811693830193909352620100009092046001600160a01b03166060820181905260038301546080830152600483015460a0830152600583015460c0830152600683015460e08301526007830154610100830152600883015461012083015260099092015460ff1615156101408201529192503314611f465760405162461bcd60e51b815260206004820152602660248201527f5354414b494e473a204f4e4c59204f574e4552204f46205354414b452043414e60448201526520434c41494d60d01b606482015260840161080a565b82156121c757600754600b5460405163049eca8760e11b81526001600160a01b03918216600482015260248101869052600092919091169063093d950e9060440160206040518083038186803b158015611f9f57600080fd5b505afa158015611fb3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fd79190612f98565b600b546040516370a0823160e01b815230600482015291925082916001600160a01b03909116906370a082319060240160206040518083038186803b15801561201f57600080fd5b505afa158015612033573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120579190612f98565b10156120755760405162461bcd60e51b815260040161080a906130c8565b600b5460405163a9059cbb60e01b8152336004820152602481018390526001600160a01b039091169063a9059cbb90604401602060405180830381600087803b1580156120c157600080fd5b505af11580156120d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120f99190612ff5565b6121155760405162461bcd60e51b815260040161080a90613125565b6000868152600e6020526040812060060180548392906121369084906130b0565b90915550506000868152600e60205260408120600701805486929061215c9084906130b0565b9091555050600854604051633815343960e11b8152336004820152602481018690526001600160a01b039091169063702a687290604401600060405180830381600087803b1580156121ad57600080fd5b505af11580156121c1573d6000803e3d6000fd5b50505050505b811561232d57600c546040516370a0823160e01b815230600482015283916001600160a01b0316906370a082319060240160206040518083038186803b15801561221057600080fd5b505afa158015612224573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122489190612f98565b10156122665760405162461bcd60e51b815260040161080a906130c8565b600c5460405163a9059cbb60e01b8152336004820152602481018490526001600160a01b039091169063a9059cbb90604401602060405180830381600087803b1580156122b257600080fd5b505af11580156122c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122ea9190612ff5565b6123065760405162461bcd60e51b815260040161080a90613125565b6000858152600e6020526040812060080180548492906123279084906130b0565b90915550505b61233833848461238f565b5050505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600954604051636158993b60e11b81526001600160a01b038581166004830152600092169063c2b132769060240160206040518083038186803b1580156123d557600080fd5b505afa1580156123e9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061240d9190613017565b90506001600160a01b03811615612441578083156124315761242f8185612447565b505b8215612338576111d1818461278c565b50505050565b60008260015b6001600160a01b0382161580159061246e575060035460ff90811690821611155b1561277f57600061247f83836128c9565b6008546040516351493cc760e11b81526001600160a01b0386811660048301529293506000929091169063a292798e9060240160206040518083038186803b1580156124ca57600080fd5b505afa1580156124de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125029190612f98565b600854604051633f99370d60e01b81526001600160a01b038781166004830152602482018a905261ffff8616604483015260648201849052929350911690633f99370d90608401600060405180830381600087803b15801561256357600080fd5b505af1158015612577573d6000803e3d6000fd5b505050508161ffff166000146126ca5760085460405163ce6510eb60e01b81526001600160a01b038681166004830152602482018990526044820184905261ffff85166064830152600092169063ce6510eb90608401602060405180830381600087803b1580156125e757600080fd5b505af11580156125fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061261f9190612f98565b600754600b5460405163049eca8760e11b81526001600160a01b0391821660048201526024810184905292935060009291169063093d950e9060440160206040518083038186803b15801561267357600080fd5b505afa158015612687573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126ab9190612f98565b600b549091506126c790879083906001600160a01b03166129b3565b50505b6005546001600160a01b03858116911614156126e9576000935061276b565b600954604051636158993b60e11b81526001600160a01b038681166004830152600092169063c2b132769060240160206040518083038186803b15801561272f57600080fd5b505afa158015612743573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127679190613017565b9450505b612776836001613182565b9250505061244d565b6001925050505b92915050565b60008260015b6001600160a01b038216158015906127b3575060035460ff90811690821611155b1561277f5760006127c483836128c9565b905061ffff8116156128155760006064806127e361ffff85168961304b565b6127ed919061306a565b6127f7919061306a565b600c5490915061281390859083906001600160a01b03166129b3565b505b6005546001600160a01b038481169116141561283457600092506128b6565b600954604051636158993b60e11b81526001600160a01b038581166004830152600092169063c2b132769060240160206040518083038186803b15801561287a57600080fd5b505afa15801561288e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128b29190613017565b9350505b6128c1826001613182565b915050612792565b60ff811660009081526012602052604081205460025482906128eb908361304b565b60ff851660009081526013602052604090205490915061ffff1681612914579250612786915050565b600854604051639ab61d7d60e01b81526001600160a01b0388811660048301526000921690639ab61d7d9060240160206040518083038186803b15801561295a57600080fd5b505afa15801561296e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129929190612f98565b90508281106129a657509250612786915050565b6000945050505050612786565b8115611c57576040516370a0823160e01b815230600482015282906001600160a01b038316906370a082319060240160206040518083038186803b1580156129fa57600080fd5b505afa158015612a0e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a329190612f98565b1015612a505760405162461bcd60e51b815260040161080a90612fb1565b60405163a9059cbb60e01b81526001600160a01b0384811660048301526024820184905282169063a9059cbb90604401602060405180830381600087803b158015612a9a57600080fd5b505af1158015612aae573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad29190612ff5565b611c575760405162461bcd60e51b815260206004820152603e60248201527f434f4d4d495353494f4e3a20554e41424c4520544f205452414e53464552204360448201527f4f4d4d495353494f4e205041594d454e5420544f20524543495049454e540000606482015260840161080a565b6001600160a01b0381168114611d7857600080fd5b600060208284031215612b6b57600080fd5b8135612b7681612b44565b9392505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612bbc57612bbc612b7d565b604052919050565b60008060008060808587031215612bda57600080fd5b8435612be581612b44565b9350602085810135612bf681612b44565b935060408601359250606086013567ffffffffffffffff80821115612c1a57600080fd5b818801915088601f830112612c2e57600080fd5b813581811115612c4057612c40612b7d565b612c52601f8201601f19168501612b93565b91508082528984828501011115612c6857600080fd5b808484018584013760008482840101525080935050505092959194509250565b600067ffffffffffffffff821115612ca257612ca2612b7d565b5060051b60200190565b600082601f830112612cbd57600080fd5b81356020612cd2612ccd83612c88565b612b93565b82815260059290921b84018101918181019086841115612cf157600080fd5b8286015b84811015612d0c5780358352918301918301612cf5565b509695505050505050565b600060208284031215612d2957600080fd5b813567ffffffffffffffff811115612d4057600080fd5b612d4c84828501612cac565b949350505050565b600060208284031215612d6657600080fd5b5035919050565b60008060408385031215612d8057600080fd5b8235612d8b81612b44565b946020939093013593505050565b60006101608201905082518252602083015160208301526040830151612dc5604084018261ffff169052565b506060830151612de060608401826001600160a01b03169052565b506080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015261010080840151818401525061012080840151818401525061014080840151612e358285018215159052565b505092915050565b600060208284031215612e4f57600080fd5b813560ff81168114612b7657600080fd5b60008060408385031215612e7357600080fd5b823567ffffffffffffffff80821115612e8b57600080fd5b818501915085601f830112612e9f57600080fd5b81356020612eaf612ccd83612c88565b82815260059290921b84018101918181019089841115612ece57600080fd5b948201945b83861015612ef5578535612ee681612b44565b82529482019490820190612ed3565b96505086013592505080821115612f0b57600080fd5b50612f1885828601612cac565b9150509250929050565b6020808252601590820152741513d2d1538814d51052d25391ce881313d0d2d151605a1b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600019821415612f9157612f91612f67565b5060010190565b600060208284031215612faa57600080fd5b5051919050565b60208082526024908201527f434f4d4d495353494f4e3a20544f4b454e2042414c414e4345204e4f5420454e60408201526309eaa8e960e31b606082015260800190565b60006020828403121561300757600080fd5b81518015158114612b7657600080fd5b60006020828403121561302957600080fd5b8151612b7681612b44565b60008282101561304657613046612f67565b500390565b600081600019048311821515161561306557613065612f67565b500290565b60008261308757634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561309e57600080fd5b815161ffff81168114612b7657600080fd5b600082198211156130c3576130c3612f67565b500190565b6020808252603b908201527f544f4b454e205354414b453a204e4f5420454e4f55474820544f4b454e20424160408201527f4c414e434520544f2050415920554e5354414b45205245574152440000000000606082015260800190565b6020808252603f908201527f544f4b454e205354414b453a20554e41424c4520544f205452414e534645522060408201527f434f4d4d495353494f4e205041594d454e5420544f20524543495049454e5400606082015260800190565b600060ff821660ff84168060ff0382111561319f5761319f612f67565b01939250505056fea2646970667358221220b1f2e76811de026ae8940d7d5f0d84fae175d1442987067450f3598c8e763c5a64736f6c63430008080033000000000000000000000000ad46c1c09a0b73ce66d6c0b50d691306f7d20a48000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d2c95568b6fcba3bda088c2552d4ff25387771000000000000000000000000ddc8ce177504e50885de21c79df3e2b58581897f00000000000000000000000003f43a944ed73187abd83b3973cf3391193eb86c0000000000000000000000000052074d3eb1429f39e5ea529b54a650c21f5aa40000000000000000000000009ff484415e856f1841d3341931d21138202ea14e