2109 lines
141 KiB
JSON
2109 lines
141 KiB
JSON
{
|
|
"_format": "hh-sol-artifact-1",
|
|
"contractName": "CunaFinanceBsc",
|
|
"sourceName": "contracts/CunaFinanceBsc.sol",
|
|
"abi": [
|
|
{
|
|
"inputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "constructor"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "InvalidInitialization",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "NotInitializing",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "ReentrancyGuardReentrantCall",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "SafeERC20FailedOperation",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "user",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "bonus",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "BonusClaimed",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "seller",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "fee",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "stakeId",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "CancellationFeePaid",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "uint256",
|
|
"name": "epochId",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "treasuryTvl",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "unlockPercentage",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "paybackPercent",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "EpochEnded",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "user",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "FundsClaimed",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "owner",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "FundsWithdrawn",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint64",
|
|
"name": "version",
|
|
"type": "uint64"
|
|
}
|
|
],
|
|
"name": "Initialized",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "user",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "StakeCreated",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "seller",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "stakeId",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "StakeSaleCancelled",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "seller",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "buyer",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "saleAmount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "stakeId",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "StakeSold",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "seller",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "saleAmount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "stakeId",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "StakeUpForSale",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "user",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "stakeId",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "StakeWithdrawn",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "UnlockScheduleSet",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "user",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "bonus",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "VestingClaimed",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "bot",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "addBot",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "_newOwner",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "addOwner",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "authorizedBots",
|
|
"outputs": [
|
|
{
|
|
"internalType": "bool",
|
|
"name": "",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address[]",
|
|
"name": "users",
|
|
"type": "address[]"
|
|
},
|
|
{
|
|
"internalType": "uint256[]",
|
|
"name": "amounts",
|
|
"type": "uint256[]"
|
|
}
|
|
],
|
|
"name": "batchCreateUserStakes",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "seller",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "stakeId",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "buySellStake",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "user",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "calculateUnclaimedFunds",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "totalUnclaimed",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "stakeId",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "cancelSellStake",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "cancellationFee",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "_token",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "claimAllVestingByToken",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256[]",
|
|
"name": "_vestingIndices",
|
|
"type": "uint256[]"
|
|
}
|
|
],
|
|
"name": "claimBonus",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "claimUnlockedFunds",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "_vestingIndex",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "claimVesting",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "user",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "createUserStake",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "user",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "bonus",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "lockedUntil",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "usdAmount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "lastClaimed",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "createdAt",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "createVesting",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "user",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "bonus",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "lockedUntil",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "usdAmount",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "createVesting",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "currentEpochId",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "dollarsVested",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "estDaysRemaining",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "currentTreasuryTvl",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "_paybackPercent",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "endEpoch",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "epochs",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "estDaysRemaining",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "currentTreasuryTvl",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "totalLiability",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "paybackPercent",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "unlockPercentage",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "timestamp",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "getAllSellStakes",
|
|
"outputs": [
|
|
{
|
|
"internalType": "address[]",
|
|
"name": "sellers",
|
|
"type": "address[]"
|
|
},
|
|
{
|
|
"internalType": "uint256[]",
|
|
"name": "stakeIds",
|
|
"type": "uint256[]"
|
|
},
|
|
{
|
|
"components": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "value",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "salePrice",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "seller",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "listTime",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"internalType": "struct CunaFinanceBsc.SellStake[]",
|
|
"name": "sellStakeData",
|
|
"type": "tuple[]"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "user",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "getAllWithdrawStakes",
|
|
"outputs": [
|
|
{
|
|
"components": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "stakeId",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "unlockTime",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"internalType": "struct CunaFinanceBsc.WithdrawStake[]",
|
|
"name": "",
|
|
"type": "tuple[]"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "epochId",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "getEpoch",
|
|
"outputs": [
|
|
{
|
|
"components": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "estDaysRemaining",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "currentTreasuryTvl",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "totalLiability",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "paybackPercent",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "unlockPercentage",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "timestamp",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"internalType": "struct CunaFinanceBsc.Epoch",
|
|
"name": "",
|
|
"type": "tuple"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "startId",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "endId",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "getEpochs",
|
|
"outputs": [
|
|
{
|
|
"components": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "estDaysRemaining",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "currentTreasuryTvl",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "totalLiability",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "paybackPercent",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "unlockPercentage",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "timestamp",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"internalType": "struct CunaFinanceBsc.Epoch[]",
|
|
"name": "",
|
|
"type": "tuple[]"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "startIndex",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "length",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "getMarketplaceHistory",
|
|
"outputs": [
|
|
{
|
|
"components": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "listTime",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "saleTime",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "origValue",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "saleValue",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "seller",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "buyer",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"internalType": "struct CunaFinanceBsc.MarketplaceHistory[]",
|
|
"name": "",
|
|
"type": "tuple[]"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "getMarketplaceHistoryCount",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "user",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "getNetStake",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "seller",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "stakeId",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "getSellStake",
|
|
"outputs": [
|
|
{
|
|
"components": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "value",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "salePrice",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "seller",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "listTime",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"internalType": "struct CunaFinanceBsc.SellStake",
|
|
"name": "",
|
|
"type": "tuple"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "user",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "getUnclaimedFundsBreakdown",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256[]",
|
|
"name": "epochIds",
|
|
"type": "uint256[]"
|
|
},
|
|
{
|
|
"internalType": "uint256[]",
|
|
"name": "amounts",
|
|
"type": "uint256[]"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "totalUnclaimed",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "_user",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "_vestingIndex",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "getUnlockedVesting",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "_user",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "_vestingIndex",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "getUnlockedVestingBonus",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "user",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "getUserMarketplaceSales",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "user",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "getUserStakeInfo",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "netStake",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "unclaimedFunds",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "totalOriginalStake",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "user",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "getUserTotalClaimed",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "user",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "getUserTotalUnclaimedUsdValue",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "totalUsd",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address[]",
|
|
"name": "_tokens",
|
|
"type": "address[]"
|
|
}
|
|
],
|
|
"name": "getVestedTotals",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256[]",
|
|
"name": "amounts",
|
|
"type": "uint256[]"
|
|
},
|
|
{
|
|
"internalType": "uint256[]",
|
|
"name": "usdValues",
|
|
"type": "uint256[]"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "totalUsd",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "_user",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "_vestingIndex",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "getVestingSchedule",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256[]",
|
|
"name": "",
|
|
"type": "uint256[]"
|
|
},
|
|
{
|
|
"internalType": "uint256[]",
|
|
"name": "",
|
|
"type": "uint256[]"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "user",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "getVestings",
|
|
"outputs": [
|
|
{
|
|
"components": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "bonus",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "lockedUntil",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "claimedAmount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "claimedBonus",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "lastClaimed",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "createdAt",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "bool",
|
|
"name": "complete",
|
|
"type": "bool"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "usdAmount",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"internalType": "struct CunaFinanceBsc.Vesting[]",
|
|
"name": "",
|
|
"type": "tuple[]"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "user",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "stakeId",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "getWithdrawStake",
|
|
"outputs": [
|
|
{
|
|
"components": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "stakeId",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "unlockTime",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"internalType": "struct CunaFinanceBsc.WithdrawStake",
|
|
"name": "",
|
|
"type": "tuple"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "initialize",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "instantBuyout",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "instantBuyoutPercent",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "marketplaceHistory",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "listTime",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "saleTime",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "origValue",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "saleValue",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "seller",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "buyer",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "marketplaceMin",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "marketplace_sales",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "owners",
|
|
"outputs": [
|
|
{
|
|
"internalType": "bool",
|
|
"name": "",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "pendingSellStakes",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "priceOracles",
|
|
"outputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "_owner",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "removeOwner",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "targetAddress",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "searchMarketplaceHistory",
|
|
"outputs": [
|
|
{
|
|
"components": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "listTime",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "saleTime",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "origValue",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "saleValue",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "seller",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "buyer",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"internalType": "struct CunaFinanceBsc.MarketplaceHistory[]",
|
|
"name": "",
|
|
"type": "tuple[]"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "value",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "salePrice",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "sellStake",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "sellStakeKeys",
|
|
"outputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "seller",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "stakeId",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "sellStakes",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "value",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "salePrice",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "seller",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "listTime",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "_token",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "_oracle",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "setPriceOracle",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "_token",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "_lockTime",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "_percentagePerStep",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "setUnlockScheduleByPercentage",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "testUpgradeFunction",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "pure",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "totalBigStakes",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "totalClaimed",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "unlockDelay",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "unlockSchedules",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "timeOffset",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "percentage",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "_newFee",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "updateCancellationFee",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "_newPercent",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "updateInstantBuyoutPercent",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "_newMin",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "updateMarketplaceMin",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "stakeId",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "newSalePrice",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "updateSellStake",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "_delay",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "updateUnlockDelay",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "userBigStake",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "userLastClaimedEpoch",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "vestedTotal",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "vestings",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "bonus",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "lockedUntil",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "claimedAmount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "claimedBonus",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "lastClaimed",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "createdAt",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "bool",
|
|
"name": "complete",
|
|
"type": "bool"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "usdAmount",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "_amount",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "withdrawFromStakingPool",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "_token",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "_amount",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "withdrawFromVestingPool",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "withdrawLiabilities",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256[]",
|
|
"name": "stakeIds",
|
|
"type": "uint256[]"
|
|
}
|
|
],
|
|
"name": "withdrawStake",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "withdrawStakes",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "stakeId",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "unlockTime",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
}
|
|
],
|
|
"bytecode": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000d6565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff1615620000735760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b0390811614620000d35780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b615f7880620000e66000396000f3fe608060405234801561001057600080fd5b50600436106104325760003560e01c80637e6d992611610236578063bed9757e1161013b578063d532bdfe116100c3578063ef5d9ae811610087578063ef5d9ae814610c26578063f109208f14610c46578063f2bb563014610c59578063fe2f50d014610c6c578063ffecf51614610c7557600080fd5b8063d532bdfe14610bc4578063da1b436414610bd7578063e88f8e6614610bf7578063eacdc5ff14610c0a578063eb44e0a314610c1357600080fd5b8063c7b530b01161010a578063c7b530b014610b22578063cc573a9114610b42578063ce13d09014610b7e578063ce3432c314610b91578063cfcf331914610bb157600080fd5b8063bed9757e14610a5b578063c267660314610a7c578063c32d3ae214610a84578063c6b61e4c14610ab257600080fd5b80639cb6f556116101be578063ac97b4171161018d578063ac97b4171461098d578063b6c3dc4c146109a0578063b92a349f146109c0578063bc0bc6ba146109d3578063bd84477d146109f357600080fd5b80639cb6f556146108fb5780639f3a676c1461090e578063a0d467581461095a578063aaf4b04d1461097a57600080fd5b80638851ec0f116102055780638851ec0f146108825780638f82818f146108955780639437e32e146108b5578063953d16bf146108c857806396fd111a146108db57600080fd5b80637e6d99261461082b57806380ca0ecf146108545780638129fc1c14610867578063853e0df21461086f57600080fd5b806343a32f891161033c57806361d1080b116102c45780637065cb48116102935780637065cb48146107b257806374d1c8e3146107c557806375060a0b146107d85780637a0c6dc0146107f85780637bc221ac1461081857600080fd5b806361d1080b1461077757806362cd6a091461077f57806367a74ddc146107965780636ef569a5146107a957600080fd5b806351e624721161030b57806351e62472146106f657806351f6cf2f14610709578063549e61d3146107315780635811622714610744578063592d1dd11461075757600080fd5b806343a32f891461061657806343c7c01114610691578063441a4175146106a45780634a61f1e5146106d657600080fd5b8063173825d9116103bf5780632ded58aa1161038e5780632ded58aa1461058c5780632e46fed8146105955780633ba8396e146105be5780633c92f98d146105e15780633f35e7221461060357600080fd5b8063173825d9146105405780631764303d146105535780631aefa2d1146105665780631eb9e53e1461057957600080fd5b8063092c761011610406578063092c7610146104da5780630a84096a146104fa5780630a910a6d1461050d5780630c7d63861461051657806313baee5b1461052057600080fd5b8062159da614610437578063013745181461045d578063022914a71461049e5780630519da32146104d1575b600080fd5b61044a610445366004615681565b610c88565b6040519081526020015b60405180910390f35b61048661046b366004615681565b6004602052600090815260409020546001600160a01b031681565b6040516001600160a01b039091168152602001610454565b6104c16104ac366004615681565b60006020819052908152604090205460ff1681565b6040519015158152602001610454565b61044a60075481565b61044a6104e8366004615681565b60066020526000908152604090205481565b61044a6105083660046156a3565b610d1e565b61044a60115481565b61051e610e56565b005b61044a61052e366004615681565b600c6020526000908152604090205481565b61051e61054e366004615681565b611055565b61051e610561366004615711565b611146565b61051e610574366004615752565b6113b1565b61044a610587366004615681565b6113e5565b61044a60105481565b61044a6105a3366004615681565b6001600160a01b03166000908152601a602052604090205490565b6104c16105cc366004615681565b60016020526000908152604090205460ff1681565b6105f46105ef366004615711565b611452565b604051610454939291906157a6565b61051e6106113660046156a3565b611640565b6106626106243660046156a3565b60126020908152600092835260408084209091529082529020805460018201546002830154600390930154919290916001600160a01b039091169084565b604051610454949392919093845260208401929092526001600160a01b03166040830152606082015260800190565b61051e61069f366004615681565b6116c7565b6106b76106b2366004615752565b611a50565b604080516001600160a01b039093168352602083019190915201610454565b61044a6106e4366004615681565b60166020526000908152604090205481565b61051e610704366004615752565b611a88565b61071c6107173660046156a3565b611abc565b60408051928352602083019190915201610454565b61051e61073f3660046157dc565b611af8565b61051e610752366004615847565b611dc1565b61044a610765366004615681565b60056020526000908152604090205481565b60195461044a565b610787612098565b60405161045493929190615869565b61051e6107a4366004615932565b6122eb565b61044a60145481565b61051e6107c0366004615681565b612348565b61051e6107d3366004615965565b61241a565b61044a6107e6366004615681565b600a6020526000908152604090205481565b61080b610806366004615681565b6125fd565b60405161045491906159d0565b61044a610826366004615681565b6126e4565b61044a610839366004615681565b6001600160a01b031660009081526015602052604090205490565b61044a6108623660046156a3565b6128c7565b61051e6129d3565b61051e61087d366004615752565b612bf8565b61051e610890366004615a7e565b612c94565b61044a6108a3366004615681565b60156020526000908152604090205481565b61051e6108c3366004615aaa565b612dd5565b61051e6108d6366004615752565b612e1c565b6108ee6108e9366004615847565b613122565b6040516104549190615b02565b61051e610909366004615752565b6132f2565b61092161091c366004615752565b6135e3565b6040805196875260208701959095529385019290925260608401526001600160a01b0390811660808401521660a082015260c001610454565b61096d6109683660046156a3565b613636565b6040516104549190615b85565b61051e610988366004615752565b6136c6565b61051e61099b366004615752565b61374c565b6109b36109ae3660046156a3565b613b5a565b6040516104549190615bb9565b61051e6109ce366004615bed565b613c8e565b6109e66109e1366004615752565b613e57565b6040516104549190615c20565b610a06610a013660046156a3565b613f2c565b604080519a8b5260208b0199909952978901969096526060880194909452608087019290925260a086015260c08501526001600160a01b031660e0840152151561010083015261012082015261014001610454565b610a6e610a693660046156a3565b613faa565b604051610454929190615c63565b6103e761044a565b610a97610a92366004615681565b614150565b60408051938452602084019290925290820152606001610454565b610af5610ac0366004615752565b600b60205260009081526040902080546001820154600283015460038401546004850154600590950154939492939192909186565b604080519687526020870195909552938501929092526060840152608083015260a082015260c001610454565b610b35610b30366004615681565b6141af565b6040516104549190615c88565b610b55610b503660046156a3565b614244565b604080519485526020850193909352918301526001600160a01b03166060820152608001610454565b61051e610b8c366004615752565b614293565b610ba4610b9f366004615681565b6142c7565b6040516104549190615cf1565b610ba4610bbf366004615847565b614587565b61051e610bd2366004615711565b614711565b61044a610be5366004615681565b600d6020526000908152604090205481565b6105f4610c05366004615681565b614985565b61044a600f5481565b61051e610c213660046156a3565b614b5f565b61044a610c34366004615681565b601a6020526000908152604090205481565b61051e610c543660046156a3565b6150d5565b61051e610c67366004615847565b6151d7565b61044a60135481565b61051e610c83366004615681565b6152e8565b6001600160a01b0381166000908152600c6020908152604080832054600d909252822054805b600f54811015610d16578215610d04576000818152600b602052604081206004015461271090610cde9086615d81565b610ce89190615d98565b9050610cf48186615dba565b9450610d008185615dcd565b9350505b80610d0e81615de0565b915050610cae565b505050919050565b6001600160a01b0382166000908152600260205260408120805482919084908110610d4b57610d4b615df9565b906000526020600020906009020190506000816006015442610d6d9190615dcd565b60078301549091506001600160a01b03166000805b6001600160a01b038316600090815260036020526040902054811015610e49576001600160a01b0383166000908152600360205260408120805483908110610dcc57610dcc615df9565b6000918252602082206002909102018054600182015460088a015492945090929091606490610dfd90600a90615d81565b610e079190615d98565b9050828810610e3457612710610e1d8383615d81565b610e279190615d98565b610e319087615dba565b95505b5050505080610e4290615de0565b9050610d82565b5093505050505b92915050565b610e5e615364565b6000610e6933610c88565b905060008111610e945760405162461bcd60e51b8152600401610e8b90615e0f565b60405180910390fd5b336000908152600c602052604081208054839290610eb3908490615dcd565b925050819055508060106000828254610ecc9190615dcd565b9091555050600f54336000908152600d6020908152604080832093909355601a90529081208054839290610f01908490615dba565b909155505060088054906000610f1683615de0565b9091555050336000908152600e6020908152604091829020825160808101845260085481529182018490526007549092820190610f539042615dba565b81527355d398326f99059ff775485246999027b3197955602091820181905283546001808201865560009586528386208551600490930201918255848401519082015560408401516002820155606090930151600390930180546001600160a01b0319166001600160a01b0390941693909317909255908252600a90527fb0775d57c3eeb070f58d410e36e9ff396813a5d76997d9a91bdf10f0798296f08054839290611001908490615dba565b909155505060405181815233907fa65a8b4f7f65a1063243d7f7e9e4da00ff767599acf21549ef2548a45d1695ae9060200160405180910390a2506110536001600080516020615f2383398151915255565b565b3360009081526020819052604090205460ff166110845760405162461bcd60e51b8152600401610e8b90615e39565b6001600160a01b03811660009081526020819052604090205460ff166110d85760405162461bcd60e51b81526020600482015260096024820152682737ba1037bbb732b960b91b6044820152606401610e8b565b336001600160a01b038216036111255760405162461bcd60e51b815260206004820152601260248201527121b0b73737ba103932b6b7bb329039b2b63360711b6044820152606401610e8b565b6001600160a01b03166000908152602081905260409020805460ff19169055565b61114e615364565b6000805b8281101561130357600084848381811061116e5761116e615df9565b3360009081526002602090815260409091205491029290920135925050811061119757506112f1565b3360009081526002602052604081208054839081106111b8576111b8615df9565b9060005260206000209060090201905060006111d43384610d1e565b905081600401548110156111ea575050506112f1565b60008260040154826111fc9190615dcd565b90508060000361120f57505050506112f1565b808360040160008282546112239190615dba565b9091555061123390508187615dba565b336000908152600e6020526040908190208151608081019092529197508061125e87620f4240615dba565b8152602001838152602001600754426112779190615dba565b81527355d398326f99059ff775485246999027b3197955602091820152825460018082018555600094855293829020835160049092020190815590820151928101929092556040810151600283015560600151600390910180546001600160a01b0319166001600160a01b03909216919091179055505050505b806112fb81615de0565b915050611152565b508015611395577355d398326f99059ff775485246999027b31979556000908152600a6020527fb0775d57c3eeb070f58d410e36e9ff396813a5d76997d9a91bdf10f0798296f0805483929061135a908490615dba565b909155505060405181815233907f4e69fdc49495bcab2b4375781457ba16653a90eb4ffb6588351bdc39071433e29060200160405180910390a25b506113ad6001600080516020615f2383398151915255565b5050565b3360009081526020819052604090205460ff166113e05760405162461bcd60e51b8152600401610e8b90615e39565b601455565b6001600160a01b0381166000908152600c60205260408120548161140884610c88565b6001600160a01b03851660009081526016602052604081205491925061142e8284615dba565b905080841161143e576000611448565b6114488185615dcd565b9695505050505050565b606080600083806001600160401b0381111561147057611470615e61565b604051908082528060200260200182016040528015611499578160200160208202803683370190505b509350806001600160401b038111156114b4576114b4615e61565b6040519080825280602002602001820160405280156114dd578160200160208202803683370190505b50925060005b818110156116375760008787838181106114ff576114ff615df9565b90506020020160208101906115149190615681565b6001600160a01b038116600090815260066020526040902054875191925090819088908590811061154757611547615df9565b6020908102919091018101919091526001600160a01b03838116600081815260049384905260408082205490516302c68be360e31b815294850192909252929116906316345f1890602401602060405180830381865afa1580156115af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115d39190615e77565b90506000670de0b6b3a76400006115ea8484615d81565b6115f49190615d98565b90508088868151811061160957611609615df9565b602090810291909101015261161e8188615dba565b965050505050808061162f90615de0565b9150506114e3565b50509250925092565b3360009081526020819052604090205460ff1661166f5760405162461bcd60e51b8152600401610e8b90615e39565b6116836001600160a01b03831633836153b0565b6040518181526001600160a01b0383169033907fa92ff919b850e4909ab2261d907ef955f11bc1716733a6cbece38d163a69af8a9060200160405180910390a35050565b6116cf615364565b6000805b336000908152600260205260409020548110156117da5733600090815260026020526040812080548390811061170b5761170b615df9565b6000918252602090912060099091020160078101549091506001600160a01b03858116911614801561174957506007810154600160a01b900460ff16155b156117c757600061175a33846128c7565b905081600301548111156117c557600082600301548261177a9190615dcd565b90506117868186615dba565b94508083600301600082825461179c9190615dba565b909155505082546003840154106117c35760078301805460ff60a01b1916600160a01b1790555b505b505b50806117d281615de0565b9150506116d3565b50600081116117fb5760405162461bcd60e51b8152600401610e8b90615e0f565b3360009081526005602052604090205415611904576001600160a01b0382811660008181526004602081905260408083205490516302c68be360e31b8152918201939093529092670de0b6b3a76400009285929116906316345f1890602401602060405180830381865afa158015611877573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189b9190615e77565b6118a59190615d81565b6118af9190615d98565b3360009081526005602052604090205490915081106118dd5733600090815260056020526040812055611902565b33600090815260056020526040812080548392906118fc908490615dcd565b90915550505b505b6001600160a01b0382166000908152600660205260408120805483929061192c908490615dcd565b9091555050336000908152600e60205260408082208151608081019092526009805491938392919061195d83615de0565b9190505581526020018381526020016007544261197a9190615dba565b81526001600160a01b0385811660209283018190528454600180820187556000968752848720865160049093020191825585850151908201556040808601516002830155606090950151600390910180546001600160a01b03191691909316179091558352600a9052812080548392906119f5908490615dba565b9091555050604080518281526000602082015233917f4a94c2c356e29a6583071e731bdacf2ca56565ba5efebcff6936eb7923b51721910160405180910390a250611a4d6001600080516020615f2383398151915255565b50565b60178181548110611a6057600080fd5b6000918252602090912060029091020180546001909101546001600160a01b03909116915082565b3360009081526020819052604090205460ff16611ab75760405162461bcd60e51b8152600401610e8b90615e39565b601355565b60036020528160005260406000208181548110611ad857600080fd5b600091825260209091206002909102018054600190910154909250905082565b3360009081526001602052604090205460ff16611b275760405162461bcd60e51b8152600401610e8b90615e39565b828114611b6e5760405162461bcd60e51b8152602060048201526015602482015274082e4e4c2f240d8cadccee8d040dad2e6dac2e8c6d605b1b6044820152606401610e8b565b82611baa5760405162461bcd60e51b815260206004820152600c60248201526b456d7074792061727261797360a01b6044820152606401610e8b565b6000805b84811015611da2576000868683818110611bca57611bca615df9565b9050602002016020810190611bdf9190615681565b6001600160a01b031603611c055760405162461bcd60e51b8152600401610e8b90615e90565b6000848483818110611c1957611c19615df9565b9050602002013511611c3d5760405162461bcd60e51b8152600401610e8b90615eb9565b838382818110611c4f57611c4f615df9565b90506020020135600c6000888885818110611c6c57611c6c615df9565b9050602002016020810190611c819190615681565b6001600160a01b03168152602081019190915260400160002054611ca59084615dcd565b611caf9190615dba565b9150838382818110611cc357611cc3615df9565b90506020020135600c6000888885818110611ce057611ce0615df9565b9050602002016020810190611cf59190615681565b6001600160a01b03168152602081019190915260400160002055858582818110611d2157611d21615df9565b9050602002016020810190611d369190615681565b6001600160a01b03167fec7e3594982826a1f90c8fc76513357b83a691b7f4e38b8be04f3d40f9b15839858584818110611d7257611d72615df9565b90506020020135604051611d8891815260200190565b60405180910390a280611d9a81615de0565b915050611bae565b508060106000828254611db59190615dba565b90915550505050505050565b611dc9615364565b60008211611e095760405162461bcd60e51b815260206004820152600d60248201526c496e76616c69642076616c756560981b6044820152606401610e8b565b60008111611e4e5760405162461bcd60e51b8152602060048201526012602482015271496e76616c69642073616c6520707269636560701b6044820152606401610e8b565b601354821015611e965760405162461bcd60e51b815260206004820152601360248201527256616c75652062656c6f77206d696e696d756d60681b6044820152606401610e8b565b6000611ea1336113e5565b905080831115611eec5760405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e74206e6574207374616b6560501b6044820152606401610e8b565b60088054906000611efc83615de0565b90915550506008543360009081526016602052604081208054869290611f23908490615dba565b909155505060408051608081018252858152602080820186815233838501818152426060860190815260008381526012865287812089825286528781209651875593516001808801919091559151600280880180546001600160a01b039384166001600160a01b03199182161790915592516003909801979097558751808901909852928752938601878152601780548084018255948190529651939095027fc624b66cc0138b8fabc209247f72d758e1cf3343756d543badbf24212bed8c1581018054949093169390941692909217905591517fc624b66cc0138b8fabc209247f72d758e1cf3343756d543badbf24212bed8c169091015590546120289190615dcd565b33600081815260186020908152604080832086845282529182902093909355805186815292830184905290917f8e79b7ba8dab5ebfa59b9c6af1743c3ef14863680b3cc5ac837f8d636f76031c910160405180910390a250506113ad6001600080516020615f2383398151915255565b60175460609081908190806001600160401b038111156120ba576120ba615e61565b6040519080825280602002602001820160405280156120e3578160200160208202803683370190505b509350806001600160401b038111156120fe576120fe615e61565b604051908082528060200260200182016040528015612127578160200160208202803683370190505b509250806001600160401b0381111561214257612142615e61565b6040519080825280602002602001820160405280156121a757816020015b6121946040518060800160405280600081526020016000815260200160006001600160a01b03168152602001600081525090565b8152602001906001900390816121605790505b50915060005b818110156122e4576000601782815481106121ca576121ca615df9565b60009182526020918290206040805180820190915260029092020180546001600160a01b031680835260019091015492820192909252875190925087908490811061221757612217615df9565b60200260200101906001600160a01b031690816001600160a01b031681525050806020015185838151811061224e5761224e615df9565b60209081029190910181019190915281516001600160a01b03908116600090815260128352604080822085850151835284529081902081516080810183528154815260018201549481019490945260028101549092169083015260030154606082015284518590849081106122c5576122c5615df9565b60200260200101819052505080806122dc90615de0565b9150506121ad565b5050909192565b3360009081526020819052604090205460ff1661231a5760405162461bcd60e51b8152600401610e8b90615e39565b6001600160a01b03918216600090815260046020526040902080546001600160a01b03191691909216179055565b3360009081526020819052604090205460ff166123775760405162461bcd60e51b8152600401610e8b90615e39565b6001600160a01b03811661239d5760405162461bcd60e51b8152600401610e8b90615e90565b6001600160a01b03811660009081526020819052604090205460ff16156123f65760405162461bcd60e51b815260206004820152600d60248201526c20b63932b0b23c9037bbb732b960991b6044820152606401610e8b565b6001600160a01b03166000908152602081905260409020805460ff19166001179055565b3360009081526001602052604090205460ff166124495760405162461bcd60e51b8152600401610e8b90615e39565b60026000896001600160a01b03166001600160a01b031681526020019081526020016000206040518061014001604052808981526020018881526020018781526020016000815260200160008152602001848152602001838152602001866001600160a01b03168152602001600015158152602001858152509080600181540180825580915050600190039060005260206000209060090201600090919091909150600082015181600001556020820151816001015560408201518160020155606082015181600301556080820151816004015560a0820151816005015560c0820151816006015560e08201518160070160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506101008201518160070160146101000a81548160ff0219169083151502179055506101208201518160080155505082600560008a6001600160a01b03166001600160a01b0316815260200190815260200160002060008282546125c19190615dba565b90915550506001600160a01b038416600090815260066020526040812080548992906125ee908490615dba565b90915550505050505050505050565b6001600160a01b0381166000908152600260209081526040808320805482518185028101850190935280835260609492939192909184015b828210156126d957600084815260209081902060408051610140810182526009860290920180548352600180820154848601526002820154928401929092526003810154606084015260048101546080840152600581015460a0840152600681015460c084015260078101546001600160a01b03811660e0850152600160a01b900460ff161515610100840152600801546101208301529083529092019101612635565b505050509050919050565b6001600160a01b038116600090815260026020526040812054815b818110156128c0576001600160a01b038416600090815260026020526040812080548390811061273157612731615df9565b600091825260209182902060408051610140810182526009909302909101805483526001810154938301939093526002830154908201526003820154606082015260048201546080820152600582015460a0820152600682015460c082015260078201546001600160a01b03811660e083015260ff600160a01b909104161515610100820181905260089092015461012082015291506128ad5760e0810180516001600160a01b03908116600090815260046020819052604080832054945190516302c68be360e31b81529294909316926316345f189261282192016001600160a01b0391909116815260200190565b602060405180830381865afa15801561283e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128629190615e77565b905060008260600151836000015161287a9190615dcd565b90506000670de0b6b3a76400006128918385615d81565b61289b9190615d98565b90506128a78188615dba565b96505050505b50806128b881615de0565b9150506126ff565b5050919050565b6001600160a01b03821660009081526002602052604081208054829190849081106128f4576128f4615df9565b9060005260206000209060090201905060008160060154426129169190615dcd565b60078301549091506001600160a01b03166000805b6001600160a01b038316600090815260036020526040902054811015610e49576001600160a01b038316600090815260036020526040812080548390811061297557612975615df9565b6000918252602090912060029091020180546001820154919250908187106129bf578754612710906129a8908390615d81565b6129b29190615d98565b6129bc9086615dba565b94505b505050806129cc90615de0565b905061292b565b60006129dd615414565b805490915060ff600160401b82041615906001600160401b0316600081158015612a045750825b90506000826001600160401b03166001148015612a205750303b155b905081158015612a2e575080155b15612a4c5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315612a7657845460ff60401b1916600160401b1785555b612a7e61543d565b3360009081526020818152604082208054600160ff1991821681179092557f4cfa3c6903140891ecff713e237b1f1746362568dfb5e8e9bc37719e4f37e0c580548216831790557f3e1f9e6abae6b647fdc3c5896ef1871ceb3c98e9e72852da3f17d161a860f76c80548216831790557f3517cbb3edfcef55b3b32be7021bc73ef070f4a8bad0d4b389b96924cf17b7418054821683179055738a9281ecece9b599c2f42d829c3d0d8e74b7083e84527f968a1791ad31618c63b086103baa804af57c3ca0efa33a191010fbb7741579fc80549091169091179055600c905269021e19e0c9bab24000007f649cbac87391465cfe24c65b052f0edf3b8486f136e0b91262d76d1f34d7826b8190556010805491929091612b9f908490615dba565b90915550506201fa406007558315612bf157845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b3360009081526020819052604090205460ff16612c275760405162461bcd60e51b8152600401610e8b90615e39565b612c467355d398326f99059ff775485246999027b319795533836153b0565b6040518181527355d398326f99059ff775485246999027b31979559033907fa92ff919b850e4909ab2261d907ef955f11bc1716733a6cbece38d163a69af8a9060200160405180910390a350565b3360009081526020819052604090205460ff16612cc35760405162461bcd60e51b8152600401610e8b90615e39565b600f5460009015612d0e576000600b60006001600f54612ce39190615dcd565b81526020019081526020016000209050612d0a84601054836001015484600201548761544d565b9150505b6040805160c08101825285815260208082018681526010548385019081526060808501888152608086018881524260a08801908152600f80546000908152600b89528a90209851895595516001890155935160028801559051600387015551600486015590516005909401939093555483518781529182018590529281018590527feadbedb993dfca23e4c79bf4fa5fe531c2e0e926258fabb8445e8bc5c472780f910160405180910390a2600f8054906000612dca83615de0565b919050555050505050565b3360009081526001602052604090205460ff16612e045760405162461bcd60e51b8152600401610e8b90615e39565b612e14868686868686424261241a565b505050505050565b33600090815260126020908152604080832084845290915290208054612e545760405162461bcd60e51b8152600401610e8b90615ee1565b60028101546001600160a01b03163314612ea15760405162461bcd60e51b815260206004820152600e60248201526d2737ba103a34329039b2b63632b960911b6044820152606401610e8b565b805460145460009061271090612eb79084615d81565b612ec19190615d98565b33600090815260166020526040812080549293508492909190612ee5908490615dcd565b90915550508015612f2e57336000908152600c602052604081208054839290612f0f908490615dcd565b925050819055508060106000828254612f289190615dcd565b90915550505b8015612f7057604080518281526020810186905233917f4725a4d4de9bff212d0885095e27515072f73f427df55e52f37f241321ef88f9910160405180910390a25b336000818152601260209081526040808320888452825280832083815560018082018590556002820180546001600160a01b03191690556003909101849055938352601882528083208884529091528120546017549092612fd091615dcd565b905080821461309157600060178281548110612fee57612fee615df9565b60009182526020918290206040805180820190915260029092020180546001600160a01b0316825260010154918101919091526017805491925082918590811061303a5761303a615df9565b6000918252602080832084516002939093020180546001600160a01b0319166001600160a01b0393841617815593810151600190940193909355835116815260188252604080822093830151825292909152208290555b60178054806130a2576130a2615f0c565b600082815260208082206002600019949094019384020180546001600160a01b031916815560010182905591909255338083526018825260408084208a855283528084209390935591518881527f73d12dec3eb3b445b6c9feb2fd559ba7c852c525bc1e59d8f7ff760c55df041d910160405180910390a2505050505050565b6060818311156131645760405162461bcd60e51b815260206004820152600d60248201526c496e76616c69642072616e676560981b6044820152606401610e8b565b600f5482106131ab5760405162461bcd60e51b8152602060048201526013602482015272115b9908195c1bd8da081b9bdd08199bdd5b99606a1b6044820152606401610e8b565b60006131b78484615dcd565b6131c2906001615dba565b90506000816001600160401b038111156131de576131de615e61565b60405190808252806020026020018201604052801561324857816020015b6132356040518060c001604052806000815260200160008152602001600081526020016000815260200160008152602001600081525090565b8152602001906001900390816131fc5790505b50905060005b828110156132e957600b60006132648389615dba565b81526020019081526020016000206040518060c001604052908160008201548152602001600182015481526020016002820154815260200160038201548152602001600482015481526020016005820154815250508282815181106132cb576132cb615df9565b602002602001018190525080806132e190615de0565b91505061324e565b50949350505050565b6132fa615364565b6000811161331a5760405162461bcd60e51b8152600401610e8b90615eb9565b6000601154116133635760405162461bcd60e51b81526020600482015260146024820152734275796f7574206e6f7420617661696c61626c6560601b6044820152606401610e8b565b600061336e336113e5565b9050808211156133b95760405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e74206e6574207374616b6560501b6044820152606401610e8b565b6127106133c8826109c4615d81565b6133d29190615d98565b8210156134125760405162461bcd60e51b815260206004820152600e60248201526d416d6f756e7420746f6f206c6f7760901b6044820152606401610e8b565b6000612710601154846134259190615d81565b61342f9190615d98565b336000908152600c6020526040812080549293508592909190613453908490615dcd565b92505081905550826010600082825461346c9190615dcd565b9091555050336000908152601a602052604081208054839290613490908490615dba565b9091555050600880549060006134a583615de0565b9091555050336000908152600e60209081526040918290208251608081018452600854815291820184905260075490928201906134e29042615dba565b81527355d398326f99059ff775485246999027b3197955602091820181905283546001808201865560009586528386208551600490930201918255848401519082015560408401516002820155606090930151600390930180546001600160a01b0319166001600160a01b0390941693909317909255908252600a90527fb0775d57c3eeb070f58d410e36e9ff396813a5d76997d9a91bdf10f0798296f08054839290613590908490615dba565b909155505060405181815233907fa65a8b4f7f65a1063243d7f7e9e4da00ff767599acf21549ef2548a45d1695ae9060200160405180910390a25050611a4d6001600080516020615f2383398151915255565b601981815481106135f357600080fd5b6000918252602090912060069091020180546001820154600283015460038401546004850154600590950154939550919390926001600160a01b03918216911686565b61366a6040518060800160405280600081526020016000815260200160006001600160a01b03168152602001600081525090565b506001600160a01b03918216600090815260126020908152604080832093835292815290829020825160808101845281548152600182015492810192909252600281015490931691810191909152600390910154606082015290565b3360009081526020819052604090205460ff166136f55760405162461bcd60e51b8152600401610e8b90615e39565b6127108111156137475760405162461bcd60e51b815260206004820152601d60248201527f50657263656e746167652063616e6e6f742065786365656420313030250000006044820152606401610e8b565b601155565b613754615364565b3360009081526002602052604090205481106137aa5760405162461bcd60e51b8152602060048201526015602482015274092dcecc2d8d2c840eccae6e8d2dcce40d2dcc8caf605b1b6044820152606401610e8b565b3360009081526002602052604081208054839081106137cb576137cb615df9565b906000526020600020906009020190508060070160149054906101000a900460ff161561382d5760405162461bcd60e51b815260206004820152601060248201526f56657374696e6720636f6d706c65746560801b6044820152606401610e8b565b600061383933846128c7565b905081600301548110156138865760405162461bcd60e51b8152602060048201526014602482015273125b9d985b1a590818db185a5b48185b5bdd5b9d60621b6044820152606401610e8b565b60008260030154826138989190615dcd565b9050600081116138ba5760405162461bcd60e51b8152600401610e8b90615e0f565b808360030160008282546138ce9190615dba565b909155505082546003840154106138f55760078301805460ff60a01b1916600160a01b1790555b3360009081526005602052604090205415613a035760078301546001600160a01b0390811660008181526004602081905260408083205490516302c68be360e31b8152918201939093529092670de0b6b3a76400009285929116906316345f1890602401602060405180830381865afa158015613976573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061399a9190615e77565b6139a49190615d81565b6139ae9190615d98565b3360009081526005602052604090205490915081106139dc5733600090815260056020526040812055613a01565b33600090815260056020526040812080548392906139fb908490615dcd565b90915550505b505b60078301546001600160a01b031660009081526006602052604081208054839290613a2f908490615dcd565b9091555050336000908152600e602052604080822081516080810190925260098054919383929190613a6083615de0565b91905055815260200183815260200160075442613a7d9190615dba565b81526007860180546001600160a01b039081166020938401528454600180820187556000968752848720865160049093020191825585850151908201556040808601516002830155606090950151600390910180546001600160a01b0319169183169190911790559054168352600a905281208054839290613b00908490615dba565b9091555050604080518281526000602082015233917f4a94c2c356e29a6583071e731bdacf2ca56565ba5efebcff6936eb7923b51721910160405180910390a2505050611a4d6001600080516020615f2383398151915255565b613b8e604051806080016040528060008152602001600081526020016000815260200160006001600160a01b031681525090565b6001600160a01b0383166000908152600e60205260408120905b8154811015613c535783828281548110613bc457613bc4615df9565b90600052602060002090600402016000015403613c4157818181548110613bed57613bed615df9565b6000918252602091829020604080516080810182526004909302909101805483526001810154938301939093526002830154908201526003909101546001600160a01b031660608201529250610e50915050565b80613c4b81615de0565b915050613ba8565b5060405162461bcd60e51b815260206004820152600f60248201526e14dd185ad9481b9bdd08199bdd5b99608a1b6044820152606401610e8b565b3360009081526020819052604090205460ff16613cbd5760405162461bcd60e51b8152600401610e8b90615e39565b6001600160a01b038316613d0b5760405162461bcd60e51b8152602060048201526015602482015274496e76616c696420746f6b656e206164647265737360581b6044820152606401610e8b565b600081118015613d1d57506127108111155b613d5e5760405162461bcd60e51b8152602060048201526012602482015271496e76616c69642070657263656e7461676560701b6044820152606401610e8b565b6001600160a01b0383166000908152600360205260408120613d7f916155dd565b6000825b612710821015613e1c5782612710613d9b8285615dba565b1115613db057613dad83612710615dcd565b90505b6001600160a01b0386166000908152600360209081526040808320815180830190925285825281830185815281546001818101845592865293909420915160029093029091019182559151910155613e088184615dba565b9250613e148583615dba565b915050613d83565b6040516001600160a01b038616907fde4b6ccc38b84f88129403b65a309f9b1c41d4c316bc2118d7614e449b9d4c4590600090a25050505050565b613e906040518060c001604052806000815260200160008152602001600081526020016000815260200160008152602001600081525090565b600f548210613ed35760405162461bcd60e51b815260206004820152600f60248201526e115c1bd8da081b9bdd08199bdd5b99608a1b6044820152606401610e8b565b506000908152600b6020908152604091829020825160c08101845281548152600182015492810192909252600281015492820192909252600382015460608201526004820154608082015260059091015460a082015290565b60026020528160005260406000208181548110613f4857600080fd5b6000918252602090912060099091020180546001820154600283015460038401546004850154600586015460068701546007880154600890980154969950949750929591949093916001600160a01b03811691600160a01b90910460ff16908a565b6001600160a01b038216600090815260026020526040812080546060928392909185908110613fdb57613fdb615df9565b600091825260208083206007600990930201918201546001600160a01b03168084526003909152604083205491935091816001600160401b0381111561402357614023615e61565b60405190808252806020026020018201604052801561404c578160200160208202803683370190505b5090506000826001600160401b0381111561406957614069615e61565b604051908082528060200260200182016040528015614092578160200160208202803683370190505b50905060005b8381101561413f576001600160a01b03851660009081526003602052604081208054839081106140ca576140ca615df9565b90600052602060002090600202019050806000015487600601546140ee9190615dba565b84838151811061410057614100615df9565b602002602001018181525050806001015483838151811061412357614123615df9565b60209081029190910101525061413881615de0565b9050614098565b5090955093505050505b9250929050565b60008060008061415f85610c88565b6001600160a01b0386166000908152600c6020526040902054909150614186908290615dcd565b6001600160a01b0386166000908152600c602052604090205490945090925090505b9193909250565b6001600160a01b0381166000908152600e60209081526040808320805482518185028101850190935280835260609492939192909184015b828210156126d957600084815260209081902060408051608081018252600486029092018054835260018082015484860152600282015492840192909252600301546001600160a01b0316606083015290835290920191016141e7565b600e602052816000526040600020818154811061426057600080fd5b6000918252602090912060049091020180546001820154600283015460039093015491945092506001600160a01b031684565b3360009081526020819052604090205460ff166142c25760405162461bcd60e51b8152600401610e8b90615e39565b600755565b60606001600160a01b0382166142ef5760405162461bcd60e51b8152600401610e8b90615e90565b6000805b60195481101561439f57836001600160a01b03166019828154811061431a5761431a615df9565b60009182526020909120600460069092020101546001600160a01b0316148061437a5750836001600160a01b03166019828154811061435b5761435b615df9565b60009182526020909120600560069092020101546001600160a01b0316145b1561438d578161438981615de0565b9250505b8061439781615de0565b9150506142f3565b50806000036143e15760408051600080825260208201909252906143d9565b6143c66155fe565b8152602001906001900390816143be5790505b509392505050565b6000816001600160401b038111156143fb576143fb615e61565b60405190808252806020026020018201604052801561443457816020015b6144216155fe565b8152602001906001900390816144195790505b5090506000805b60195481101561457d57856001600160a01b03166019828154811061446257614462615df9565b60009182526020909120600460069092020101546001600160a01b031614806144c25750856001600160a01b0316601982815481106144a3576144a3615df9565b60009182526020909120600560069092020101546001600160a01b0316145b1561456b57601981815481106144da576144da615df9565b60009182526020918290206040805160c0810182526006909302909101805483526001810154938301939093526002830154908201526003820154606082015260048201546001600160a01b03908116608083015260059092015490911660a0820152835184908490811061455157614551615df9565b6020026020010181905250818061456790615de0565b9250505b8061457581615de0565b91505061443b565b5090949350505050565b60195460609083106145db5760405162461bcd60e51b815260206004820152601960248201527f537461727420696e646578206f7574206f6620626f756e6473000000000000006044820152606401610e8b565b60006145e78385615dba565b6019549091508111156145f957506019545b60006146058583615dcd565b6001600160401b0381111561461c5761461c615e61565b60405190808252806020026020018201604052801561465557816020015b6146426155fe565b81526020019060019003908161463a5790505b509050845b828110156132e9576019818154811061467557614675615df9565b60009182526020918290206040805160c0810182526006909302909101805483526001810154938301939093526002830154908201526003820154606082015260048201546001600160a01b03908116608083015260059092015490911660a0820152826146e38884615dcd565b815181106146f3576146f3615df9565b6020026020010181905250808061470990615de0565b91505061465a565b614719615364565b336000908152600e60205260409020805461476c5760405162461bcd60e51b81526020600482015260136024820152724e6f207374616b657320617661696c61626c6560681b6044820152606401610e8b565b816147b15760405162461bcd60e51b8152602060048201526015602482015274139bc81cdd185ad94812511cc81c1c9bdd9a591959605a1b6044820152606401610e8b565b60005b8281101561496c5760008484838181106147d0576147d0615df9565b9050602002013590506000805b84548110156149175760008582815481106147fa576147fa615df9565b90600052602060002090600402019050838160000154148015614821575060008160010154115b156149045780600201544210156148695760405162461bcd60e51b815260206004820152600c60248201526b14dd185ad9481b1bd8dad95960a21b6044820152606401610e8b565b60018101805460038301546000928390556001600160a01b0316808352600a602052604083208054929391928492906148a3908490615dcd565b909155506148bd90506001600160a01b03821633846153b0565b604080518381526020810188905233917f933735aa8de6d7547d0126171b2f31b9c34dd00f3ecd4be85a0ba047db4fafef910160405180910390a260019450505050614917565b508061490f81615de0565b9150506147dd565b50806149575760405162461bcd60e51b815260206004820152600f60248201526e14dd185ad9481b9bdd08199bdd5b99608a1b6044820152606401610e8b565b5050808061496490615de0565b9150506147b4565b50506113ad6001600080516020615f2383398151915255565b6001600160a01b0381166000908152600c6020908152604080832054600d909252822054600f5460609384939092909183906149c2908390615dcd565b9050806000036149f35750506040805160008082526020820181815282840190935290955090935091506141a89050565b806001600160401b03811115614a0b57614a0b615e61565b604051908082528060200260200182016040528015614a34578160200160208202803683370190505b509550806001600160401b03811115614a4f57614a4f615e61565b604051908082528060200260200182016040528015614a78578160200160208202803683370190505b50945060005b81811015614b54576000614a928285615dba565b905080888381518110614aa757614aa7615df9565b60209081029190910101528415614b20576000818152600b602052604081206004015461271090614ad89088615d81565b614ae29190615d98565b905080888481518110614af757614af7615df9565b6020908102919091010152614b0c8188615dba565b9650614b188187615dcd565b955050614b41565b6000878381518110614b3457614b34615df9565b6020026020010181815250505b5080614b4c81615de0565b915050614a7e565b505050509193909250565b614b67615364565b6001600160a01b038216600090815260126020908152604080832084845290915290208054614ba85760405162461bcd60e51b8152600401610e8b90615ee1565b336001600160a01b03841603614bf95760405162461bcd60e51b815260206004820152601660248201527543616e6e6f7420627579206f776e206c697374696e6760501b6044820152606401610e8b565b8054600182015460038301546000828411614c15576000614c1f565b614c1f8385615dcd565b9050600084614c3083612710615d81565b614c3a9190615d98565b90506000612710614c4b8380615d81565b614c559190615d98565b90506000612710614c668389615d81565b614c709190615d98565b90506000614c7e8289615dcd565b9050614ca07355d398326f99059ff775485246999027b3197955338d8a6154e6565b6001600160a01b038b166000908152600c6020526040812080548a9290614cc8908490615dcd565b9091555050336000908152600c602052604081208054839290614cec908490615dba565b90915550506001600160a01b038b16600090815260166020526040812080548a9290614d19908490615dcd565b90915550614d2990508189615dcd565b60106000828254614d3a9190615dcd565b90915550506001600160a01b038b1660009081526015602052604081208054899290614d67908490615dba565b9250508190555060196040518060c001604052808881526020014281526020018a81526020018981526020018d6001600160a01b03168152602001336001600160a01b031681525090806001815401808255809150506001900390600052602060002090600602016000909190919091506000820151816000015560208201518160010155604082015181600201556060820151816003015560808201518160040160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060a08201518160050160006101000a8154816001600160a01b0302191690836001600160a01b031602179055505050601260008c6001600160a01b03166001600160a01b0316815260200190815260200160002060008b815260200190815260200160002060008082016000905560018201600090556002820160006101000a8154906001600160a01b030219169055600382016000905550506000601860008d6001600160a01b03166001600160a01b0316815260200190815260200160002060008c815260200190815260200160002054905060006001601780549050614f169190615dcd565b9050808214614fd757600060178281548110614f3457614f34615df9565b60009182526020918290206040805180820190915260029092020180546001600160a01b03168252600101549181019190915260178054919250829185908110614f8057614f80615df9565b6000918252602080832084516002939093020180546001600160a01b0319166001600160a01b0393841617815593810151600190940193909355835116815260188252604080822093830151825292909152208290555b6017805480614fe857614fe8615f0c565b6001900381819060005260206000209060020201600080820160006101000a8154906001600160a01b030219169055600182016000905550509055601860008e6001600160a01b03166001600160a01b0316815260200190815260200160002060008d815260200190815260200160002060009055336001600160a01b03168d6001600160a01b03167f7bb39d095b04a9986ed34adf14d74c33294d0a9e807f02bf634d532507422eba8b8f6040516150ab929190918252602082015260400190565b60405180910390a350505050505050505050506113ad6001600080516020615f2383398151915255565b3360009081526001602052604090205460ff166151045760405162461bcd60e51b8152600401610e8b90615e39565b6001600160a01b03821661512a5760405162461bcd60e51b8152600401610e8b90615e90565b6000811161514a5760405162461bcd60e51b8152600401610e8b90615eb9565b6001600160a01b0382166000908152600c6020526040902054601054829161517191615dcd565b61517b9190615dba565b6010556001600160a01b0382166000818152600c602052604090819020839055517fec7e3594982826a1f90c8fc76513357b83a691b7f4e38b8be04f3d40f9b15839906151cb9084815260200190565b60405180910390a25050565b3360009081526012602090815260408083208584529091529020805461520f5760405162461bcd60e51b8152600401610e8b90615ee1565b60028101546001600160a01b0316331461525c5760405162461bcd60e51b815260206004820152600e60248201526d2737ba103a34329039b2b63632b960911b6044820152606401610e8b565b600082116152a15760405162461bcd60e51b8152602060048201526012602482015271496e76616c69642073616c6520707269636560701b6044820152606401610e8b565b60018101829055604080518381526020810185905233917f8e79b7ba8dab5ebfa59b9c6af1743c3ef14863680b3cc5ac837f8d636f76031c910160405180910390a2505050565b3360009081526020819052604090205460ff166153175760405162461bcd60e51b8152600401610e8b90615e39565b6001600160a01b03811661533d5760405162461bcd60e51b8152600401610e8b90615e90565b6001600160a01b03166000908152600160208190526040909120805460ff19169091179055565b600080516020615f2383398151915280546001190161539657604051633ee5aeb560e01b815260040160405180910390fd5b60029055565b6001600080516020615f2383398151915255565b6040516001600160a01b0383811660248301526044820183905261540f91859182169063a9059cbb906064015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050615525565b505050565b6000807ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00610e50565b615445615596565b6110536155bb565b600082158061545a575084155b15615467575060006154dd565b60008561547688612710615d81565b6154809190615d98565b905060008461549187612710615d81565b61549b9190615d98565b90508082116154af576000925050506154dd565b60006154bb8284615dcd565b905060006127106154cc8784615d81565b6154d69190615d98565b9450505050505b95945050505050565b6040516001600160a01b03848116602483015283811660448301526064820183905261551f9186918216906323b872dd906084016153dd565b50505050565b600080602060008451602086016000885af180615548576040513d6000823e3d81fd5b50506000513d9150811561556057806001141561556d565b6001600160a01b0384163b155b1561551f57604051635274afe760e01b81526001600160a01b0385166004820152602401610e8b565b61559e6155c3565b61105357604051631afcd79f60e31b815260040160405180910390fd5b61539c615596565b60006155cd615414565b54600160401b900460ff16919050565b5080546000825560020290600052602060002090810190611a4d9190615646565b6040518060c001604052806000815260200160008152602001600081526020016000815260200160006001600160a01b0316815260200160006001600160a01b031681525090565b5b808211156156615760008082556001820155600201615647565b5090565b80356001600160a01b038116811461567c57600080fd5b919050565b60006020828403121561569357600080fd5b61569c82615665565b9392505050565b600080604083850312156156b657600080fd5b6156bf83615665565b946020939093013593505050565b60008083601f8401126156df57600080fd5b5081356001600160401b038111156156f657600080fd5b6020830191508360208260051b850101111561414957600080fd5b6000806020838503121561572457600080fd5b82356001600160401b0381111561573a57600080fd5b615746858286016156cd565b90969095509350505050565b60006020828403121561576457600080fd5b5035919050565b600081518084526020808501945080840160005b8381101561579b5781518752958201959082019060010161577f565b509495945050505050565b6060815260006157b9606083018661576b565b82810360208401526157cb818661576b565b915050826040830152949350505050565b600080600080604085870312156157f257600080fd5b84356001600160401b038082111561580957600080fd5b615815888389016156cd565b9096509450602087013591508082111561582e57600080fd5b5061583b878288016156cd565b95989497509550505050565b6000806040838503121561585a57600080fd5b50508035926020909101359150565b60608082528451908201819052600090608090818401906020808901855b838110156158ac5781516001600160a01b031685529382019390820190600101615887565b5050858303818701526158bf838961576b565b868103604088015287518082528289019450908201925060005b818110156159235761591384865180518252602080820151908301526040808201516001600160a01b031690830152606090810151910152565b93820193928501926001016158d9565b50919998505050505050505050565b6000806040838503121561594557600080fd5b61594e83615665565b915061595c60208401615665565b90509250929050565b600080600080600080600080610100898b03121561598257600080fd5b61598b89615665565b97506020890135965060408901359550606089013594506159ae60808a01615665565b979a969950949793969560a0850135955060c08501359460e001359350915050565b602080825282518282018190526000919060409081850190868401855b82811015615a715781518051855286810151878601528581015186860152606080820151908601526080808201519086015260a0808201519086015260c0808201519086015260e0808201516001600160a01b03169086015261010080820151151590860152610120908101519085015261014090930192908501906001016159ed565b5091979650505050505050565b600080600060608486031215615a9357600080fd5b505081359360208301359350604090920135919050565b60008060008060008060c08789031215615ac357600080fd5b615acc87615665565b9550602087013594506040870135935060608701359250615aef60808801615665565b915060a087013590509295509295509295565b6020808252825182820181905260009190848201906040850190845b81811015615b7957615b66838551805182526020810151602083015260408101516040830152606081015160608301526080810151608083015260a081015160a08301525050565b9284019260c09290920191600101615b1e565b50909695505050505050565b81518152602080830151908201526040808301516001600160a01b0316908201526060808301519082015260808101610e50565b8151815260208083015190820152604080830151908201526060808301516001600160a01b03169082015260808101610e50565b600080600060608486031215615c0257600080fd5b615c0b84615665565b95602085013595506040909401359392505050565b60c08101610e508284805182526020810151602083015260408101516040830152606081015160608301526080810151608083015260a081015160a08301525050565b604081526000615c76604083018561576b565b82810360208401526154dd818561576b565b6020808252825182820181905260009190848201906040850190845b81811015615b7957615cde8385518051825260208082015190830152604080820151908301526060908101516001600160a01b0316910152565b9284019260809290920191600101615ca4565b602080825282518282018190526000919060409081850190868401855b82811015615a715781518051855286810151878601528581015186860152606080820151908601526080808201516001600160a01b039081169187019190915260a091820151169085015260c09093019290850190600101615d0e565b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610e5057610e50615d6b565b600082615db557634e487b7160e01b600052601260045260246000fd5b500490565b80820180821115610e5057610e50615d6b565b81810381811115610e5057610e50615d6b565b600060018201615df257615df2615d6b565b5060010190565b634e487b7160e01b600052603260045260246000fd5b60208082526010908201526f4e6f7468696e6720746f20636c61696d60801b604082015260600190565b6020808252600e908201526d139bdd08185d5d1a1bdc9a5e995960921b604082015260600190565b634e487b7160e01b600052604160045260246000fd5b600060208284031215615e8957600080fd5b5051919050565b6020808252600f908201526e496e76616c6964206164647265737360881b604082015260600190565b6020808252600e908201526d125b9d985b1a5908185b5bdd5b9d60921b604082015260600190565b602080825260119082015270131a5cdd1a5b99c81b9bdd08199bdd5b99607a1b604082015260600190565b634e487b7160e01b600052603160045260246000fdfe9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00a264697066735822122053ad093bf4121a90e89d232cfdc0a66fee92dcf61cc66a5d2bb9b830e37653cb64736f6c63430008140033",
|
|
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106104325760003560e01c80637e6d992611610236578063bed9757e1161013b578063d532bdfe116100c3578063ef5d9ae811610087578063ef5d9ae814610c26578063f109208f14610c46578063f2bb563014610c59578063fe2f50d014610c6c578063ffecf51614610c7557600080fd5b8063d532bdfe14610bc4578063da1b436414610bd7578063e88f8e6614610bf7578063eacdc5ff14610c0a578063eb44e0a314610c1357600080fd5b8063c7b530b01161010a578063c7b530b014610b22578063cc573a9114610b42578063ce13d09014610b7e578063ce3432c314610b91578063cfcf331914610bb157600080fd5b8063bed9757e14610a5b578063c267660314610a7c578063c32d3ae214610a84578063c6b61e4c14610ab257600080fd5b80639cb6f556116101be578063ac97b4171161018d578063ac97b4171461098d578063b6c3dc4c146109a0578063b92a349f146109c0578063bc0bc6ba146109d3578063bd84477d146109f357600080fd5b80639cb6f556146108fb5780639f3a676c1461090e578063a0d467581461095a578063aaf4b04d1461097a57600080fd5b80638851ec0f116102055780638851ec0f146108825780638f82818f146108955780639437e32e146108b5578063953d16bf146108c857806396fd111a146108db57600080fd5b80637e6d99261461082b57806380ca0ecf146108545780638129fc1c14610867578063853e0df21461086f57600080fd5b806343a32f891161033c57806361d1080b116102c45780637065cb48116102935780637065cb48146107b257806374d1c8e3146107c557806375060a0b146107d85780637a0c6dc0146107f85780637bc221ac1461081857600080fd5b806361d1080b1461077757806362cd6a091461077f57806367a74ddc146107965780636ef569a5146107a957600080fd5b806351e624721161030b57806351e62472146106f657806351f6cf2f14610709578063549e61d3146107315780635811622714610744578063592d1dd11461075757600080fd5b806343a32f891461061657806343c7c01114610691578063441a4175146106a45780634a61f1e5146106d657600080fd5b8063173825d9116103bf5780632ded58aa1161038e5780632ded58aa1461058c5780632e46fed8146105955780633ba8396e146105be5780633c92f98d146105e15780633f35e7221461060357600080fd5b8063173825d9146105405780631764303d146105535780631aefa2d1146105665780631eb9e53e1461057957600080fd5b8063092c761011610406578063092c7610146104da5780630a84096a146104fa5780630a910a6d1461050d5780630c7d63861461051657806313baee5b1461052057600080fd5b8062159da614610437578063013745181461045d578063022914a71461049e5780630519da32146104d1575b600080fd5b61044a610445366004615681565b610c88565b6040519081526020015b60405180910390f35b61048661046b366004615681565b6004602052600090815260409020546001600160a01b031681565b6040516001600160a01b039091168152602001610454565b6104c16104ac366004615681565b60006020819052908152604090205460ff1681565b6040519015158152602001610454565b61044a60075481565b61044a6104e8366004615681565b60066020526000908152604090205481565b61044a6105083660046156a3565b610d1e565b61044a60115481565b61051e610e56565b005b61044a61052e366004615681565b600c6020526000908152604090205481565b61051e61054e366004615681565b611055565b61051e610561366004615711565b611146565b61051e610574366004615752565b6113b1565b61044a610587366004615681565b6113e5565b61044a60105481565b61044a6105a3366004615681565b6001600160a01b03166000908152601a602052604090205490565b6104c16105cc366004615681565b60016020526000908152604090205460ff1681565b6105f46105ef366004615711565b611452565b604051610454939291906157a6565b61051e6106113660046156a3565b611640565b6106626106243660046156a3565b60126020908152600092835260408084209091529082529020805460018201546002830154600390930154919290916001600160a01b039091169084565b604051610454949392919093845260208401929092526001600160a01b03166040830152606082015260800190565b61051e61069f366004615681565b6116c7565b6106b76106b2366004615752565b611a50565b604080516001600160a01b039093168352602083019190915201610454565b61044a6106e4366004615681565b60166020526000908152604090205481565b61051e610704366004615752565b611a88565b61071c6107173660046156a3565b611abc565b60408051928352602083019190915201610454565b61051e61073f3660046157dc565b611af8565b61051e610752366004615847565b611dc1565b61044a610765366004615681565b60056020526000908152604090205481565b60195461044a565b610787612098565b60405161045493929190615869565b61051e6107a4366004615932565b6122eb565b61044a60145481565b61051e6107c0366004615681565b612348565b61051e6107d3366004615965565b61241a565b61044a6107e6366004615681565b600a6020526000908152604090205481565b61080b610806366004615681565b6125fd565b60405161045491906159d0565b61044a610826366004615681565b6126e4565b61044a610839366004615681565b6001600160a01b031660009081526015602052604090205490565b61044a6108623660046156a3565b6128c7565b61051e6129d3565b61051e61087d366004615752565b612bf8565b61051e610890366004615a7e565b612c94565b61044a6108a3366004615681565b60156020526000908152604090205481565b61051e6108c3366004615aaa565b612dd5565b61051e6108d6366004615752565b612e1c565b6108ee6108e9366004615847565b613122565b6040516104549190615b02565b61051e610909366004615752565b6132f2565b61092161091c366004615752565b6135e3565b6040805196875260208701959095529385019290925260608401526001600160a01b0390811660808401521660a082015260c001610454565b61096d6109683660046156a3565b613636565b6040516104549190615b85565b61051e610988366004615752565b6136c6565b61051e61099b366004615752565b61374c565b6109b36109ae3660046156a3565b613b5a565b6040516104549190615bb9565b61051e6109ce366004615bed565b613c8e565b6109e66109e1366004615752565b613e57565b6040516104549190615c20565b610a06610a013660046156a3565b613f2c565b604080519a8b5260208b0199909952978901969096526060880194909452608087019290925260a086015260c08501526001600160a01b031660e0840152151561010083015261012082015261014001610454565b610a6e610a693660046156a3565b613faa565b604051610454929190615c63565b6103e761044a565b610a97610a92366004615681565b614150565b60408051938452602084019290925290820152606001610454565b610af5610ac0366004615752565b600b60205260009081526040902080546001820154600283015460038401546004850154600590950154939492939192909186565b604080519687526020870195909552938501929092526060840152608083015260a082015260c001610454565b610b35610b30366004615681565b6141af565b6040516104549190615c88565b610b55610b503660046156a3565b614244565b604080519485526020850193909352918301526001600160a01b03166060820152608001610454565b61051e610b8c366004615752565b614293565b610ba4610b9f366004615681565b6142c7565b6040516104549190615cf1565b610ba4610bbf366004615847565b614587565b61051e610bd2366004615711565b614711565b61044a610be5366004615681565b600d6020526000908152604090205481565b6105f4610c05366004615681565b614985565b61044a600f5481565b61051e610c213660046156a3565b614b5f565b61044a610c34366004615681565b601a6020526000908152604090205481565b61051e610c543660046156a3565b6150d5565b61051e610c67366004615847565b6151d7565b61044a60135481565b61051e610c83366004615681565b6152e8565b6001600160a01b0381166000908152600c6020908152604080832054600d909252822054805b600f54811015610d16578215610d04576000818152600b602052604081206004015461271090610cde9086615d81565b610ce89190615d98565b9050610cf48186615dba565b9450610d008185615dcd565b9350505b80610d0e81615de0565b915050610cae565b505050919050565b6001600160a01b0382166000908152600260205260408120805482919084908110610d4b57610d4b615df9565b906000526020600020906009020190506000816006015442610d6d9190615dcd565b60078301549091506001600160a01b03166000805b6001600160a01b038316600090815260036020526040902054811015610e49576001600160a01b0383166000908152600360205260408120805483908110610dcc57610dcc615df9565b6000918252602082206002909102018054600182015460088a015492945090929091606490610dfd90600a90615d81565b610e079190615d98565b9050828810610e3457612710610e1d8383615d81565b610e279190615d98565b610e319087615dba565b95505b5050505080610e4290615de0565b9050610d82565b5093505050505b92915050565b610e5e615364565b6000610e6933610c88565b905060008111610e945760405162461bcd60e51b8152600401610e8b90615e0f565b60405180910390fd5b336000908152600c602052604081208054839290610eb3908490615dcd565b925050819055508060106000828254610ecc9190615dcd565b9091555050600f54336000908152600d6020908152604080832093909355601a90529081208054839290610f01908490615dba565b909155505060088054906000610f1683615de0565b9091555050336000908152600e6020908152604091829020825160808101845260085481529182018490526007549092820190610f539042615dba565b81527355d398326f99059ff775485246999027b3197955602091820181905283546001808201865560009586528386208551600490930201918255848401519082015560408401516002820155606090930151600390930180546001600160a01b0319166001600160a01b0390941693909317909255908252600a90527fb0775d57c3eeb070f58d410e36e9ff396813a5d76997d9a91bdf10f0798296f08054839290611001908490615dba565b909155505060405181815233907fa65a8b4f7f65a1063243d7f7e9e4da00ff767599acf21549ef2548a45d1695ae9060200160405180910390a2506110536001600080516020615f2383398151915255565b565b3360009081526020819052604090205460ff166110845760405162461bcd60e51b8152600401610e8b90615e39565b6001600160a01b03811660009081526020819052604090205460ff166110d85760405162461bcd60e51b81526020600482015260096024820152682737ba1037bbb732b960b91b6044820152606401610e8b565b336001600160a01b038216036111255760405162461bcd60e51b815260206004820152601260248201527121b0b73737ba103932b6b7bb329039b2b63360711b6044820152606401610e8b565b6001600160a01b03166000908152602081905260409020805460ff19169055565b61114e615364565b6000805b8281101561130357600084848381811061116e5761116e615df9565b3360009081526002602090815260409091205491029290920135925050811061119757506112f1565b3360009081526002602052604081208054839081106111b8576111b8615df9565b9060005260206000209060090201905060006111d43384610d1e565b905081600401548110156111ea575050506112f1565b60008260040154826111fc9190615dcd565b90508060000361120f57505050506112f1565b808360040160008282546112239190615dba565b9091555061123390508187615dba565b336000908152600e6020526040908190208151608081019092529197508061125e87620f4240615dba565b8152602001838152602001600754426112779190615dba565b81527355d398326f99059ff775485246999027b3197955602091820152825460018082018555600094855293829020835160049092020190815590820151928101929092556040810151600283015560600151600390910180546001600160a01b0319166001600160a01b03909216919091179055505050505b806112fb81615de0565b915050611152565b508015611395577355d398326f99059ff775485246999027b31979556000908152600a6020527fb0775d57c3eeb070f58d410e36e9ff396813a5d76997d9a91bdf10f0798296f0805483929061135a908490615dba565b909155505060405181815233907f4e69fdc49495bcab2b4375781457ba16653a90eb4ffb6588351bdc39071433e29060200160405180910390a25b506113ad6001600080516020615f2383398151915255565b5050565b3360009081526020819052604090205460ff166113e05760405162461bcd60e51b8152600401610e8b90615e39565b601455565b6001600160a01b0381166000908152600c60205260408120548161140884610c88565b6001600160a01b03851660009081526016602052604081205491925061142e8284615dba565b905080841161143e576000611448565b6114488185615dcd565b9695505050505050565b606080600083806001600160401b0381111561147057611470615e61565b604051908082528060200260200182016040528015611499578160200160208202803683370190505b509350806001600160401b038111156114b4576114b4615e61565b6040519080825280602002602001820160405280156114dd578160200160208202803683370190505b50925060005b818110156116375760008787838181106114ff576114ff615df9565b90506020020160208101906115149190615681565b6001600160a01b038116600090815260066020526040902054875191925090819088908590811061154757611547615df9565b6020908102919091018101919091526001600160a01b03838116600081815260049384905260408082205490516302c68be360e31b815294850192909252929116906316345f1890602401602060405180830381865afa1580156115af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115d39190615e77565b90506000670de0b6b3a76400006115ea8484615d81565b6115f49190615d98565b90508088868151811061160957611609615df9565b602090810291909101015261161e8188615dba565b965050505050808061162f90615de0565b9150506114e3565b50509250925092565b3360009081526020819052604090205460ff1661166f5760405162461bcd60e51b8152600401610e8b90615e39565b6116836001600160a01b03831633836153b0565b6040518181526001600160a01b0383169033907fa92ff919b850e4909ab2261d907ef955f11bc1716733a6cbece38d163a69af8a9060200160405180910390a35050565b6116cf615364565b6000805b336000908152600260205260409020548110156117da5733600090815260026020526040812080548390811061170b5761170b615df9565b6000918252602090912060099091020160078101549091506001600160a01b03858116911614801561174957506007810154600160a01b900460ff16155b156117c757600061175a33846128c7565b905081600301548111156117c557600082600301548261177a9190615dcd565b90506117868186615dba565b94508083600301600082825461179c9190615dba565b909155505082546003840154106117c35760078301805460ff60a01b1916600160a01b1790555b505b505b50806117d281615de0565b9150506116d3565b50600081116117fb5760405162461bcd60e51b8152600401610e8b90615e0f565b3360009081526005602052604090205415611904576001600160a01b0382811660008181526004602081905260408083205490516302c68be360e31b8152918201939093529092670de0b6b3a76400009285929116906316345f1890602401602060405180830381865afa158015611877573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189b9190615e77565b6118a59190615d81565b6118af9190615d98565b3360009081526005602052604090205490915081106118dd5733600090815260056020526040812055611902565b33600090815260056020526040812080548392906118fc908490615dcd565b90915550505b505b6001600160a01b0382166000908152600660205260408120805483929061192c908490615dcd565b9091555050336000908152600e60205260408082208151608081019092526009805491938392919061195d83615de0565b9190505581526020018381526020016007544261197a9190615dba565b81526001600160a01b0385811660209283018190528454600180820187556000968752848720865160049093020191825585850151908201556040808601516002830155606090950151600390910180546001600160a01b03191691909316179091558352600a9052812080548392906119f5908490615dba565b9091555050604080518281526000602082015233917f4a94c2c356e29a6583071e731bdacf2ca56565ba5efebcff6936eb7923b51721910160405180910390a250611a4d6001600080516020615f2383398151915255565b50565b60178181548110611a6057600080fd5b6000918252602090912060029091020180546001909101546001600160a01b03909116915082565b3360009081526020819052604090205460ff16611ab75760405162461bcd60e51b8152600401610e8b90615e39565b601355565b60036020528160005260406000208181548110611ad857600080fd5b600091825260209091206002909102018054600190910154909250905082565b3360009081526001602052604090205460ff16611b275760405162461bcd60e51b8152600401610e8b90615e39565b828114611b6e5760405162461bcd60e51b8152602060048201526015602482015274082e4e4c2f240d8cadccee8d040dad2e6dac2e8c6d605b1b6044820152606401610e8b565b82611baa5760405162461bcd60e51b815260206004820152600c60248201526b456d7074792061727261797360a01b6044820152606401610e8b565b6000805b84811015611da2576000868683818110611bca57611bca615df9565b9050602002016020810190611bdf9190615681565b6001600160a01b031603611c055760405162461bcd60e51b8152600401610e8b90615e90565b6000848483818110611c1957611c19615df9565b9050602002013511611c3d5760405162461bcd60e51b8152600401610e8b90615eb9565b838382818110611c4f57611c4f615df9565b90506020020135600c6000888885818110611c6c57611c6c615df9565b9050602002016020810190611c819190615681565b6001600160a01b03168152602081019190915260400160002054611ca59084615dcd565b611caf9190615dba565b9150838382818110611cc357611cc3615df9565b90506020020135600c6000888885818110611ce057611ce0615df9565b9050602002016020810190611cf59190615681565b6001600160a01b03168152602081019190915260400160002055858582818110611d2157611d21615df9565b9050602002016020810190611d369190615681565b6001600160a01b03167fec7e3594982826a1f90c8fc76513357b83a691b7f4e38b8be04f3d40f9b15839858584818110611d7257611d72615df9565b90506020020135604051611d8891815260200190565b60405180910390a280611d9a81615de0565b915050611bae565b508060106000828254611db59190615dba565b90915550505050505050565b611dc9615364565b60008211611e095760405162461bcd60e51b815260206004820152600d60248201526c496e76616c69642076616c756560981b6044820152606401610e8b565b60008111611e4e5760405162461bcd60e51b8152602060048201526012602482015271496e76616c69642073616c6520707269636560701b6044820152606401610e8b565b601354821015611e965760405162461bcd60e51b815260206004820152601360248201527256616c75652062656c6f77206d696e696d756d60681b6044820152606401610e8b565b6000611ea1336113e5565b905080831115611eec5760405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e74206e6574207374616b6560501b6044820152606401610e8b565b60088054906000611efc83615de0565b90915550506008543360009081526016602052604081208054869290611f23908490615dba565b909155505060408051608081018252858152602080820186815233838501818152426060860190815260008381526012865287812089825286528781209651875593516001808801919091559151600280880180546001600160a01b039384166001600160a01b03199182161790915592516003909801979097558751808901909852928752938601878152601780548084018255948190529651939095027fc624b66cc0138b8fabc209247f72d758e1cf3343756d543badbf24212bed8c1581018054949093169390941692909217905591517fc624b66cc0138b8fabc209247f72d758e1cf3343756d543badbf24212bed8c169091015590546120289190615dcd565b33600081815260186020908152604080832086845282529182902093909355805186815292830184905290917f8e79b7ba8dab5ebfa59b9c6af1743c3ef14863680b3cc5ac837f8d636f76031c910160405180910390a250506113ad6001600080516020615f2383398151915255565b60175460609081908190806001600160401b038111156120ba576120ba615e61565b6040519080825280602002602001820160405280156120e3578160200160208202803683370190505b509350806001600160401b038111156120fe576120fe615e61565b604051908082528060200260200182016040528015612127578160200160208202803683370190505b509250806001600160401b0381111561214257612142615e61565b6040519080825280602002602001820160405280156121a757816020015b6121946040518060800160405280600081526020016000815260200160006001600160a01b03168152602001600081525090565b8152602001906001900390816121605790505b50915060005b818110156122e4576000601782815481106121ca576121ca615df9565b60009182526020918290206040805180820190915260029092020180546001600160a01b031680835260019091015492820192909252875190925087908490811061221757612217615df9565b60200260200101906001600160a01b031690816001600160a01b031681525050806020015185838151811061224e5761224e615df9565b60209081029190910181019190915281516001600160a01b03908116600090815260128352604080822085850151835284529081902081516080810183528154815260018201549481019490945260028101549092169083015260030154606082015284518590849081106122c5576122c5615df9565b60200260200101819052505080806122dc90615de0565b9150506121ad565b5050909192565b3360009081526020819052604090205460ff1661231a5760405162461bcd60e51b8152600401610e8b90615e39565b6001600160a01b03918216600090815260046020526040902080546001600160a01b03191691909216179055565b3360009081526020819052604090205460ff166123775760405162461bcd60e51b8152600401610e8b90615e39565b6001600160a01b03811661239d5760405162461bcd60e51b8152600401610e8b90615e90565b6001600160a01b03811660009081526020819052604090205460ff16156123f65760405162461bcd60e51b815260206004820152600d60248201526c20b63932b0b23c9037bbb732b960991b6044820152606401610e8b565b6001600160a01b03166000908152602081905260409020805460ff19166001179055565b3360009081526001602052604090205460ff166124495760405162461bcd60e51b8152600401610e8b90615e39565b60026000896001600160a01b03166001600160a01b031681526020019081526020016000206040518061014001604052808981526020018881526020018781526020016000815260200160008152602001848152602001838152602001866001600160a01b03168152602001600015158152602001858152509080600181540180825580915050600190039060005260206000209060090201600090919091909150600082015181600001556020820151816001015560408201518160020155606082015181600301556080820151816004015560a0820151816005015560c0820151816006015560e08201518160070160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506101008201518160070160146101000a81548160ff0219169083151502179055506101208201518160080155505082600560008a6001600160a01b03166001600160a01b0316815260200190815260200160002060008282546125c19190615dba565b90915550506001600160a01b038416600090815260066020526040812080548992906125ee908490615dba565b90915550505050505050505050565b6001600160a01b0381166000908152600260209081526040808320805482518185028101850190935280835260609492939192909184015b828210156126d957600084815260209081902060408051610140810182526009860290920180548352600180820154848601526002820154928401929092526003810154606084015260048101546080840152600581015460a0840152600681015460c084015260078101546001600160a01b03811660e0850152600160a01b900460ff161515610100840152600801546101208301529083529092019101612635565b505050509050919050565b6001600160a01b038116600090815260026020526040812054815b818110156128c0576001600160a01b038416600090815260026020526040812080548390811061273157612731615df9565b600091825260209182902060408051610140810182526009909302909101805483526001810154938301939093526002830154908201526003820154606082015260048201546080820152600582015460a0820152600682015460c082015260078201546001600160a01b03811660e083015260ff600160a01b909104161515610100820181905260089092015461012082015291506128ad5760e0810180516001600160a01b03908116600090815260046020819052604080832054945190516302c68be360e31b81529294909316926316345f189261282192016001600160a01b0391909116815260200190565b602060405180830381865afa15801561283e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128629190615e77565b905060008260600151836000015161287a9190615dcd565b90506000670de0b6b3a76400006128918385615d81565b61289b9190615d98565b90506128a78188615dba565b96505050505b50806128b881615de0565b9150506126ff565b5050919050565b6001600160a01b03821660009081526002602052604081208054829190849081106128f4576128f4615df9565b9060005260206000209060090201905060008160060154426129169190615dcd565b60078301549091506001600160a01b03166000805b6001600160a01b038316600090815260036020526040902054811015610e49576001600160a01b038316600090815260036020526040812080548390811061297557612975615df9565b6000918252602090912060029091020180546001820154919250908187106129bf578754612710906129a8908390615d81565b6129b29190615d98565b6129bc9086615dba565b94505b505050806129cc90615de0565b905061292b565b60006129dd615414565b805490915060ff600160401b82041615906001600160401b0316600081158015612a045750825b90506000826001600160401b03166001148015612a205750303b155b905081158015612a2e575080155b15612a4c5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315612a7657845460ff60401b1916600160401b1785555b612a7e61543d565b3360009081526020818152604082208054600160ff1991821681179092557f4cfa3c6903140891ecff713e237b1f1746362568dfb5e8e9bc37719e4f37e0c580548216831790557f3e1f9e6abae6b647fdc3c5896ef1871ceb3c98e9e72852da3f17d161a860f76c80548216831790557f3517cbb3edfcef55b3b32be7021bc73ef070f4a8bad0d4b389b96924cf17b7418054821683179055738a9281ecece9b599c2f42d829c3d0d8e74b7083e84527f968a1791ad31618c63b086103baa804af57c3ca0efa33a191010fbb7741579fc80549091169091179055600c905269021e19e0c9bab24000007f649cbac87391465cfe24c65b052f0edf3b8486f136e0b91262d76d1f34d7826b8190556010805491929091612b9f908490615dba565b90915550506201fa406007558315612bf157845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b3360009081526020819052604090205460ff16612c275760405162461bcd60e51b8152600401610e8b90615e39565b612c467355d398326f99059ff775485246999027b319795533836153b0565b6040518181527355d398326f99059ff775485246999027b31979559033907fa92ff919b850e4909ab2261d907ef955f11bc1716733a6cbece38d163a69af8a9060200160405180910390a350565b3360009081526020819052604090205460ff16612cc35760405162461bcd60e51b8152600401610e8b90615e39565b600f5460009015612d0e576000600b60006001600f54612ce39190615dcd565b81526020019081526020016000209050612d0a84601054836001015484600201548761544d565b9150505b6040805160c08101825285815260208082018681526010548385019081526060808501888152608086018881524260a08801908152600f80546000908152600b89528a90209851895595516001890155935160028801559051600387015551600486015590516005909401939093555483518781529182018590529281018590527feadbedb993dfca23e4c79bf4fa5fe531c2e0e926258fabb8445e8bc5c472780f910160405180910390a2600f8054906000612dca83615de0565b919050555050505050565b3360009081526001602052604090205460ff16612e045760405162461bcd60e51b8152600401610e8b90615e39565b612e14868686868686424261241a565b505050505050565b33600090815260126020908152604080832084845290915290208054612e545760405162461bcd60e51b8152600401610e8b90615ee1565b60028101546001600160a01b03163314612ea15760405162461bcd60e51b815260206004820152600e60248201526d2737ba103a34329039b2b63632b960911b6044820152606401610e8b565b805460145460009061271090612eb79084615d81565b612ec19190615d98565b33600090815260166020526040812080549293508492909190612ee5908490615dcd565b90915550508015612f2e57336000908152600c602052604081208054839290612f0f908490615dcd565b925050819055508060106000828254612f289190615dcd565b90915550505b8015612f7057604080518281526020810186905233917f4725a4d4de9bff212d0885095e27515072f73f427df55e52f37f241321ef88f9910160405180910390a25b336000818152601260209081526040808320888452825280832083815560018082018590556002820180546001600160a01b03191690556003909101849055938352601882528083208884529091528120546017549092612fd091615dcd565b905080821461309157600060178281548110612fee57612fee615df9565b60009182526020918290206040805180820190915260029092020180546001600160a01b0316825260010154918101919091526017805491925082918590811061303a5761303a615df9565b6000918252602080832084516002939093020180546001600160a01b0319166001600160a01b0393841617815593810151600190940193909355835116815260188252604080822093830151825292909152208290555b60178054806130a2576130a2615f0c565b600082815260208082206002600019949094019384020180546001600160a01b031916815560010182905591909255338083526018825260408084208a855283528084209390935591518881527f73d12dec3eb3b445b6c9feb2fd559ba7c852c525bc1e59d8f7ff760c55df041d910160405180910390a2505050505050565b6060818311156131645760405162461bcd60e51b815260206004820152600d60248201526c496e76616c69642072616e676560981b6044820152606401610e8b565b600f5482106131ab5760405162461bcd60e51b8152602060048201526013602482015272115b9908195c1bd8da081b9bdd08199bdd5b99606a1b6044820152606401610e8b565b60006131b78484615dcd565b6131c2906001615dba565b90506000816001600160401b038111156131de576131de615e61565b60405190808252806020026020018201604052801561324857816020015b6132356040518060c001604052806000815260200160008152602001600081526020016000815260200160008152602001600081525090565b8152602001906001900390816131fc5790505b50905060005b828110156132e957600b60006132648389615dba565b81526020019081526020016000206040518060c001604052908160008201548152602001600182015481526020016002820154815260200160038201548152602001600482015481526020016005820154815250508282815181106132cb576132cb615df9565b602002602001018190525080806132e190615de0565b91505061324e565b50949350505050565b6132fa615364565b6000811161331a5760405162461bcd60e51b8152600401610e8b90615eb9565b6000601154116133635760405162461bcd60e51b81526020600482015260146024820152734275796f7574206e6f7420617661696c61626c6560601b6044820152606401610e8b565b600061336e336113e5565b9050808211156133b95760405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e74206e6574207374616b6560501b6044820152606401610e8b565b6127106133c8826109c4615d81565b6133d29190615d98565b8210156134125760405162461bcd60e51b815260206004820152600e60248201526d416d6f756e7420746f6f206c6f7760901b6044820152606401610e8b565b6000612710601154846134259190615d81565b61342f9190615d98565b336000908152600c6020526040812080549293508592909190613453908490615dcd565b92505081905550826010600082825461346c9190615dcd565b9091555050336000908152601a602052604081208054839290613490908490615dba565b9091555050600880549060006134a583615de0565b9091555050336000908152600e60209081526040918290208251608081018452600854815291820184905260075490928201906134e29042615dba565b81527355d398326f99059ff775485246999027b3197955602091820181905283546001808201865560009586528386208551600490930201918255848401519082015560408401516002820155606090930151600390930180546001600160a01b0319166001600160a01b0390941693909317909255908252600a90527fb0775d57c3eeb070f58d410e36e9ff396813a5d76997d9a91bdf10f0798296f08054839290613590908490615dba565b909155505060405181815233907fa65a8b4f7f65a1063243d7f7e9e4da00ff767599acf21549ef2548a45d1695ae9060200160405180910390a25050611a4d6001600080516020615f2383398151915255565b601981815481106135f357600080fd5b6000918252602090912060069091020180546001820154600283015460038401546004850154600590950154939550919390926001600160a01b03918216911686565b61366a6040518060800160405280600081526020016000815260200160006001600160a01b03168152602001600081525090565b506001600160a01b03918216600090815260126020908152604080832093835292815290829020825160808101845281548152600182015492810192909252600281015490931691810191909152600390910154606082015290565b3360009081526020819052604090205460ff166136f55760405162461bcd60e51b8152600401610e8b90615e39565b6127108111156137475760405162461bcd60e51b815260206004820152601d60248201527f50657263656e746167652063616e6e6f742065786365656420313030250000006044820152606401610e8b565b601155565b613754615364565b3360009081526002602052604090205481106137aa5760405162461bcd60e51b8152602060048201526015602482015274092dcecc2d8d2c840eccae6e8d2dcce40d2dcc8caf605b1b6044820152606401610e8b565b3360009081526002602052604081208054839081106137cb576137cb615df9565b906000526020600020906009020190508060070160149054906101000a900460ff161561382d5760405162461bcd60e51b815260206004820152601060248201526f56657374696e6720636f6d706c65746560801b6044820152606401610e8b565b600061383933846128c7565b905081600301548110156138865760405162461bcd60e51b8152602060048201526014602482015273125b9d985b1a590818db185a5b48185b5bdd5b9d60621b6044820152606401610e8b565b60008260030154826138989190615dcd565b9050600081116138ba5760405162461bcd60e51b8152600401610e8b90615e0f565b808360030160008282546138ce9190615dba565b909155505082546003840154106138f55760078301805460ff60a01b1916600160a01b1790555b3360009081526005602052604090205415613a035760078301546001600160a01b0390811660008181526004602081905260408083205490516302c68be360e31b8152918201939093529092670de0b6b3a76400009285929116906316345f1890602401602060405180830381865afa158015613976573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061399a9190615e77565b6139a49190615d81565b6139ae9190615d98565b3360009081526005602052604090205490915081106139dc5733600090815260056020526040812055613a01565b33600090815260056020526040812080548392906139fb908490615dcd565b90915550505b505b60078301546001600160a01b031660009081526006602052604081208054839290613a2f908490615dcd565b9091555050336000908152600e602052604080822081516080810190925260098054919383929190613a6083615de0565b91905055815260200183815260200160075442613a7d9190615dba565b81526007860180546001600160a01b039081166020938401528454600180820187556000968752848720865160049093020191825585850151908201556040808601516002830155606090950151600390910180546001600160a01b0319169183169190911790559054168352600a905281208054839290613b00908490615dba565b9091555050604080518281526000602082015233917f4a94c2c356e29a6583071e731bdacf2ca56565ba5efebcff6936eb7923b51721910160405180910390a2505050611a4d6001600080516020615f2383398151915255565b613b8e604051806080016040528060008152602001600081526020016000815260200160006001600160a01b031681525090565b6001600160a01b0383166000908152600e60205260408120905b8154811015613c535783828281548110613bc457613bc4615df9565b90600052602060002090600402016000015403613c4157818181548110613bed57613bed615df9565b6000918252602091829020604080516080810182526004909302909101805483526001810154938301939093526002830154908201526003909101546001600160a01b031660608201529250610e50915050565b80613c4b81615de0565b915050613ba8565b5060405162461bcd60e51b815260206004820152600f60248201526e14dd185ad9481b9bdd08199bdd5b99608a1b6044820152606401610e8b565b3360009081526020819052604090205460ff16613cbd5760405162461bcd60e51b8152600401610e8b90615e39565b6001600160a01b038316613d0b5760405162461bcd60e51b8152602060048201526015602482015274496e76616c696420746f6b656e206164647265737360581b6044820152606401610e8b565b600081118015613d1d57506127108111155b613d5e5760405162461bcd60e51b8152602060048201526012602482015271496e76616c69642070657263656e7461676560701b6044820152606401610e8b565b6001600160a01b0383166000908152600360205260408120613d7f916155dd565b6000825b612710821015613e1c5782612710613d9b8285615dba565b1115613db057613dad83612710615dcd565b90505b6001600160a01b0386166000908152600360209081526040808320815180830190925285825281830185815281546001818101845592865293909420915160029093029091019182559151910155613e088184615dba565b9250613e148583615dba565b915050613d83565b6040516001600160a01b038616907fde4b6ccc38b84f88129403b65a309f9b1c41d4c316bc2118d7614e449b9d4c4590600090a25050505050565b613e906040518060c001604052806000815260200160008152602001600081526020016000815260200160008152602001600081525090565b600f548210613ed35760405162461bcd60e51b815260206004820152600f60248201526e115c1bd8da081b9bdd08199bdd5b99608a1b6044820152606401610e8b565b506000908152600b6020908152604091829020825160c08101845281548152600182015492810192909252600281015492820192909252600382015460608201526004820154608082015260059091015460a082015290565b60026020528160005260406000208181548110613f4857600080fd5b6000918252602090912060099091020180546001820154600283015460038401546004850154600586015460068701546007880154600890980154969950949750929591949093916001600160a01b03811691600160a01b90910460ff16908a565b6001600160a01b038216600090815260026020526040812080546060928392909185908110613fdb57613fdb615df9565b600091825260208083206007600990930201918201546001600160a01b03168084526003909152604083205491935091816001600160401b0381111561402357614023615e61565b60405190808252806020026020018201604052801561404c578160200160208202803683370190505b5090506000826001600160401b0381111561406957614069615e61565b604051908082528060200260200182016040528015614092578160200160208202803683370190505b50905060005b8381101561413f576001600160a01b03851660009081526003602052604081208054839081106140ca576140ca615df9565b90600052602060002090600202019050806000015487600601546140ee9190615dba565b84838151811061410057614100615df9565b602002602001018181525050806001015483838151811061412357614123615df9565b60209081029190910101525061413881615de0565b9050614098565b5090955093505050505b9250929050565b60008060008061415f85610c88565b6001600160a01b0386166000908152600c6020526040902054909150614186908290615dcd565b6001600160a01b0386166000908152600c602052604090205490945090925090505b9193909250565b6001600160a01b0381166000908152600e60209081526040808320805482518185028101850190935280835260609492939192909184015b828210156126d957600084815260209081902060408051608081018252600486029092018054835260018082015484860152600282015492840192909252600301546001600160a01b0316606083015290835290920191016141e7565b600e602052816000526040600020818154811061426057600080fd5b6000918252602090912060049091020180546001820154600283015460039093015491945092506001600160a01b031684565b3360009081526020819052604090205460ff166142c25760405162461bcd60e51b8152600401610e8b90615e39565b600755565b60606001600160a01b0382166142ef5760405162461bcd60e51b8152600401610e8b90615e90565b6000805b60195481101561439f57836001600160a01b03166019828154811061431a5761431a615df9565b60009182526020909120600460069092020101546001600160a01b0316148061437a5750836001600160a01b03166019828154811061435b5761435b615df9565b60009182526020909120600560069092020101546001600160a01b0316145b1561438d578161438981615de0565b9250505b8061439781615de0565b9150506142f3565b50806000036143e15760408051600080825260208201909252906143d9565b6143c66155fe565b8152602001906001900390816143be5790505b509392505050565b6000816001600160401b038111156143fb576143fb615e61565b60405190808252806020026020018201604052801561443457816020015b6144216155fe565b8152602001906001900390816144195790505b5090506000805b60195481101561457d57856001600160a01b03166019828154811061446257614462615df9565b60009182526020909120600460069092020101546001600160a01b031614806144c25750856001600160a01b0316601982815481106144a3576144a3615df9565b60009182526020909120600560069092020101546001600160a01b0316145b1561456b57601981815481106144da576144da615df9565b60009182526020918290206040805160c0810182526006909302909101805483526001810154938301939093526002830154908201526003820154606082015260048201546001600160a01b03908116608083015260059092015490911660a0820152835184908490811061455157614551615df9565b6020026020010181905250818061456790615de0565b9250505b8061457581615de0565b91505061443b565b5090949350505050565b60195460609083106145db5760405162461bcd60e51b815260206004820152601960248201527f537461727420696e646578206f7574206f6620626f756e6473000000000000006044820152606401610e8b565b60006145e78385615dba565b6019549091508111156145f957506019545b60006146058583615dcd565b6001600160401b0381111561461c5761461c615e61565b60405190808252806020026020018201604052801561465557816020015b6146426155fe565b81526020019060019003908161463a5790505b509050845b828110156132e9576019818154811061467557614675615df9565b60009182526020918290206040805160c0810182526006909302909101805483526001810154938301939093526002830154908201526003820154606082015260048201546001600160a01b03908116608083015260059092015490911660a0820152826146e38884615dcd565b815181106146f3576146f3615df9565b6020026020010181905250808061470990615de0565b91505061465a565b614719615364565b336000908152600e60205260409020805461476c5760405162461bcd60e51b81526020600482015260136024820152724e6f207374616b657320617661696c61626c6560681b6044820152606401610e8b565b816147b15760405162461bcd60e51b8152602060048201526015602482015274139bc81cdd185ad94812511cc81c1c9bdd9a591959605a1b6044820152606401610e8b565b60005b8281101561496c5760008484838181106147d0576147d0615df9565b9050602002013590506000805b84548110156149175760008582815481106147fa576147fa615df9565b90600052602060002090600402019050838160000154148015614821575060008160010154115b156149045780600201544210156148695760405162461bcd60e51b815260206004820152600c60248201526b14dd185ad9481b1bd8dad95960a21b6044820152606401610e8b565b60018101805460038301546000928390556001600160a01b0316808352600a602052604083208054929391928492906148a3908490615dcd565b909155506148bd90506001600160a01b03821633846153b0565b604080518381526020810188905233917f933735aa8de6d7547d0126171b2f31b9c34dd00f3ecd4be85a0ba047db4fafef910160405180910390a260019450505050614917565b508061490f81615de0565b9150506147dd565b50806149575760405162461bcd60e51b815260206004820152600f60248201526e14dd185ad9481b9bdd08199bdd5b99608a1b6044820152606401610e8b565b5050808061496490615de0565b9150506147b4565b50506113ad6001600080516020615f2383398151915255565b6001600160a01b0381166000908152600c6020908152604080832054600d909252822054600f5460609384939092909183906149c2908390615dcd565b9050806000036149f35750506040805160008082526020820181815282840190935290955090935091506141a89050565b806001600160401b03811115614a0b57614a0b615e61565b604051908082528060200260200182016040528015614a34578160200160208202803683370190505b509550806001600160401b03811115614a4f57614a4f615e61565b604051908082528060200260200182016040528015614a78578160200160208202803683370190505b50945060005b81811015614b54576000614a928285615dba565b905080888381518110614aa757614aa7615df9565b60209081029190910101528415614b20576000818152600b602052604081206004015461271090614ad89088615d81565b614ae29190615d98565b905080888481518110614af757614af7615df9565b6020908102919091010152614b0c8188615dba565b9650614b188187615dcd565b955050614b41565b6000878381518110614b3457614b34615df9565b6020026020010181815250505b5080614b4c81615de0565b915050614a7e565b505050509193909250565b614b67615364565b6001600160a01b038216600090815260126020908152604080832084845290915290208054614ba85760405162461bcd60e51b8152600401610e8b90615ee1565b336001600160a01b03841603614bf95760405162461bcd60e51b815260206004820152601660248201527543616e6e6f7420627579206f776e206c697374696e6760501b6044820152606401610e8b565b8054600182015460038301546000828411614c15576000614c1f565b614c1f8385615dcd565b9050600084614c3083612710615d81565b614c3a9190615d98565b90506000612710614c4b8380615d81565b614c559190615d98565b90506000612710614c668389615d81565b614c709190615d98565b90506000614c7e8289615dcd565b9050614ca07355d398326f99059ff775485246999027b3197955338d8a6154e6565b6001600160a01b038b166000908152600c6020526040812080548a9290614cc8908490615dcd565b9091555050336000908152600c602052604081208054839290614cec908490615dba565b90915550506001600160a01b038b16600090815260166020526040812080548a9290614d19908490615dcd565b90915550614d2990508189615dcd565b60106000828254614d3a9190615dcd565b90915550506001600160a01b038b1660009081526015602052604081208054899290614d67908490615dba565b9250508190555060196040518060c001604052808881526020014281526020018a81526020018981526020018d6001600160a01b03168152602001336001600160a01b031681525090806001815401808255809150506001900390600052602060002090600602016000909190919091506000820151816000015560208201518160010155604082015181600201556060820151816003015560808201518160040160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060a08201518160050160006101000a8154816001600160a01b0302191690836001600160a01b031602179055505050601260008c6001600160a01b03166001600160a01b0316815260200190815260200160002060008b815260200190815260200160002060008082016000905560018201600090556002820160006101000a8154906001600160a01b030219169055600382016000905550506000601860008d6001600160a01b03166001600160a01b0316815260200190815260200160002060008c815260200190815260200160002054905060006001601780549050614f169190615dcd565b9050808214614fd757600060178281548110614f3457614f34615df9565b60009182526020918290206040805180820190915260029092020180546001600160a01b03168252600101549181019190915260178054919250829185908110614f8057614f80615df9565b6000918252602080832084516002939093020180546001600160a01b0319166001600160a01b0393841617815593810151600190940193909355835116815260188252604080822093830151825292909152208290555b6017805480614fe857614fe8615f0c565b6001900381819060005260206000209060020201600080820160006101000a8154906001600160a01b030219169055600182016000905550509055601860008e6001600160a01b03166001600160a01b0316815260200190815260200160002060008d815260200190815260200160002060009055336001600160a01b03168d6001600160a01b03167f7bb39d095b04a9986ed34adf14d74c33294d0a9e807f02bf634d532507422eba8b8f6040516150ab929190918252602082015260400190565b60405180910390a350505050505050505050506113ad6001600080516020615f2383398151915255565b3360009081526001602052604090205460ff166151045760405162461bcd60e51b8152600401610e8b90615e39565b6001600160a01b03821661512a5760405162461bcd60e51b8152600401610e8b90615e90565b6000811161514a5760405162461bcd60e51b8152600401610e8b90615eb9565b6001600160a01b0382166000908152600c6020526040902054601054829161517191615dcd565b61517b9190615dba565b6010556001600160a01b0382166000818152600c602052604090819020839055517fec7e3594982826a1f90c8fc76513357b83a691b7f4e38b8be04f3d40f9b15839906151cb9084815260200190565b60405180910390a25050565b3360009081526012602090815260408083208584529091529020805461520f5760405162461bcd60e51b8152600401610e8b90615ee1565b60028101546001600160a01b0316331461525c5760405162461bcd60e51b815260206004820152600e60248201526d2737ba103a34329039b2b63632b960911b6044820152606401610e8b565b600082116152a15760405162461bcd60e51b8152602060048201526012602482015271496e76616c69642073616c6520707269636560701b6044820152606401610e8b565b60018101829055604080518381526020810185905233917f8e79b7ba8dab5ebfa59b9c6af1743c3ef14863680b3cc5ac837f8d636f76031c910160405180910390a2505050565b3360009081526020819052604090205460ff166153175760405162461bcd60e51b8152600401610e8b90615e39565b6001600160a01b03811661533d5760405162461bcd60e51b8152600401610e8b90615e90565b6001600160a01b03166000908152600160208190526040909120805460ff19169091179055565b600080516020615f2383398151915280546001190161539657604051633ee5aeb560e01b815260040160405180910390fd5b60029055565b6001600080516020615f2383398151915255565b6040516001600160a01b0383811660248301526044820183905261540f91859182169063a9059cbb906064015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050615525565b505050565b6000807ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00610e50565b615445615596565b6110536155bb565b600082158061545a575084155b15615467575060006154dd565b60008561547688612710615d81565b6154809190615d98565b905060008461549187612710615d81565b61549b9190615d98565b90508082116154af576000925050506154dd565b60006154bb8284615dcd565b905060006127106154cc8784615d81565b6154d69190615d98565b9450505050505b95945050505050565b6040516001600160a01b03848116602483015283811660448301526064820183905261551f9186918216906323b872dd906084016153dd565b50505050565b600080602060008451602086016000885af180615548576040513d6000823e3d81fd5b50506000513d9150811561556057806001141561556d565b6001600160a01b0384163b155b1561551f57604051635274afe760e01b81526001600160a01b0385166004820152602401610e8b565b61559e6155c3565b61105357604051631afcd79f60e31b815260040160405180910390fd5b61539c615596565b60006155cd615414565b54600160401b900460ff16919050565b5080546000825560020290600052602060002090810190611a4d9190615646565b6040518060c001604052806000815260200160008152602001600081526020016000815260200160006001600160a01b0316815260200160006001600160a01b031681525090565b5b808211156156615760008082556001820155600201615647565b5090565b80356001600160a01b038116811461567c57600080fd5b919050565b60006020828403121561569357600080fd5b61569c82615665565b9392505050565b600080604083850312156156b657600080fd5b6156bf83615665565b946020939093013593505050565b60008083601f8401126156df57600080fd5b5081356001600160401b038111156156f657600080fd5b6020830191508360208260051b850101111561414957600080fd5b6000806020838503121561572457600080fd5b82356001600160401b0381111561573a57600080fd5b615746858286016156cd565b90969095509350505050565b60006020828403121561576457600080fd5b5035919050565b600081518084526020808501945080840160005b8381101561579b5781518752958201959082019060010161577f565b509495945050505050565b6060815260006157b9606083018661576b565b82810360208401526157cb818661576b565b915050826040830152949350505050565b600080600080604085870312156157f257600080fd5b84356001600160401b038082111561580957600080fd5b615815888389016156cd565b9096509450602087013591508082111561582e57600080fd5b5061583b878288016156cd565b95989497509550505050565b6000806040838503121561585a57600080fd5b50508035926020909101359150565b60608082528451908201819052600090608090818401906020808901855b838110156158ac5781516001600160a01b031685529382019390820190600101615887565b5050858303818701526158bf838961576b565b868103604088015287518082528289019450908201925060005b818110156159235761591384865180518252602080820151908301526040808201516001600160a01b031690830152606090810151910152565b93820193928501926001016158d9565b50919998505050505050505050565b6000806040838503121561594557600080fd5b61594e83615665565b915061595c60208401615665565b90509250929050565b600080600080600080600080610100898b03121561598257600080fd5b61598b89615665565b97506020890135965060408901359550606089013594506159ae60808a01615665565b979a969950949793969560a0850135955060c08501359460e001359350915050565b602080825282518282018190526000919060409081850190868401855b82811015615a715781518051855286810151878601528581015186860152606080820151908601526080808201519086015260a0808201519086015260c0808201519086015260e0808201516001600160a01b03169086015261010080820151151590860152610120908101519085015261014090930192908501906001016159ed565b5091979650505050505050565b600080600060608486031215615a9357600080fd5b505081359360208301359350604090920135919050565b60008060008060008060c08789031215615ac357600080fd5b615acc87615665565b9550602087013594506040870135935060608701359250615aef60808801615665565b915060a087013590509295509295509295565b6020808252825182820181905260009190848201906040850190845b81811015615b7957615b66838551805182526020810151602083015260408101516040830152606081015160608301526080810151608083015260a081015160a08301525050565b9284019260c09290920191600101615b1e565b50909695505050505050565b81518152602080830151908201526040808301516001600160a01b0316908201526060808301519082015260808101610e50565b8151815260208083015190820152604080830151908201526060808301516001600160a01b03169082015260808101610e50565b600080600060608486031215615c0257600080fd5b615c0b84615665565b95602085013595506040909401359392505050565b60c08101610e508284805182526020810151602083015260408101516040830152606081015160608301526080810151608083015260a081015160a08301525050565b604081526000615c76604083018561576b565b82810360208401526154dd818561576b565b6020808252825182820181905260009190848201906040850190845b81811015615b7957615cde8385518051825260208082015190830152604080820151908301526060908101516001600160a01b0316910152565b9284019260809290920191600101615ca4565b602080825282518282018190526000919060409081850190868401855b82811015615a715781518051855286810151878601528581015186860152606080820151908601526080808201516001600160a01b039081169187019190915260a091820151169085015260c09093019290850190600101615d0e565b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610e5057610e50615d6b565b600082615db557634e487b7160e01b600052601260045260246000fd5b500490565b80820180821115610e5057610e50615d6b565b81810381811115610e5057610e50615d6b565b600060018201615df257615df2615d6b565b5060010190565b634e487b7160e01b600052603260045260246000fd5b60208082526010908201526f4e6f7468696e6720746f20636c61696d60801b604082015260600190565b6020808252600e908201526d139bdd08185d5d1a1bdc9a5e995960921b604082015260600190565b634e487b7160e01b600052604160045260246000fd5b600060208284031215615e8957600080fd5b5051919050565b6020808252600f908201526e496e76616c6964206164647265737360881b604082015260600190565b6020808252600e908201526d125b9d985b1a5908185b5bdd5b9d60921b604082015260600190565b602080825260119082015270131a5cdd1a5b99c81b9bdd08199bdd5b99607a1b604082015260600190565b634e487b7160e01b600052603160045260246000fdfe9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00a264697066735822122053ad093bf4121a90e89d232cfdc0a66fee92dcf61cc66a5d2bb9b830e37653cb64736f6c63430008140033",
|
|
"linkReferences": {},
|
|
"deployedLinkReferences": {}
|
|
}
|