{"id":"295420e0c6025aec60d7dd795ada7232","_format":"hh-sol-build-info-1","solcVersion":"0.8.27","solcLongVersion":"0.8.27+commit.40a35a09","input":{"language":"Solidity","sources":{"contracts/interfaces/AggregatedStakedPSYSV3.sol":{"content":"pragma solidity ^0.8.10;\n\ninterface AggregatedStakedPSYSV3 {\n    event Approval(address indexed owner, address indexed spender, uint256 value);\n    event AssetConfigUpdated(address indexed asset, uint256 emission);\n    event AssetIndexUpdated(address indexed asset, uint256 index);\n    event Cooldown(address indexed user, uint256 amount);\n    event CooldownSecondsChanged(uint256 cooldownSeconds);\n    event DelegateChanged(address indexed delegator, address indexed delegatee, uint8 delegationType);\n    event DelegatedPowerChanged(address indexed user, uint256 amount, uint8 delegationType);\n    event ExchangeRateChanged(uint216 exchangeRate);\n    event FundsReturned(uint256 amount);\n    event GHODebtTokenChanged(address indexed newDebtToken);\n    event MaxSlashablePercentageChanged(uint256 newPercentage);\n    event PendingAdminChanged(address indexed newPendingAdmin, uint256 role);\n    event Redeem(address indexed from, address indexed to, uint256 assets, uint256 shares);\n    event RewardsAccrued(address user, uint256 amount);\n    event RewardsClaimed(address indexed from, address indexed to, uint256 amount);\n    event RoleClaimed(address indexed newAdmin, uint256 role);\n    event Slashed(address indexed destination, uint256 amount);\n    event SlashingExitWindowDurationChanged(uint256 windowSeconds);\n    event SlashingSettled();\n    event Staked(address indexed from, address indexed to, uint256 assets, uint256 shares);\n    event Transfer(address indexed from, address indexed to, uint256 value);\n    event UserIndexUpdated(address indexed user, address indexed asset, uint256 index);\n\n    struct AssetConfigInput {\n        uint128 emissionPerSecond;\n        uint256 totalStaked;\n        address underlyingAsset;\n    }\n\n    struct ExchangeRateSnapshot {\n        uint40 blockNumber;\n        uint216 value;\n    }\n\n    function CLAIM_HELPER_ROLE() external view returns (uint256);\n    function COOLDOWN_ADMIN_ROLE() external view returns (uint256);\n    function COOLDOWN_SECONDS() external view returns (uint256);\n    function DELEGATE_BY_TYPE_TYPEHASH() external view returns (bytes32);\n    function DELEGATE_TYPEHASH() external view returns (bytes32);\n    function DISTRIBUTION_END() external view returns (uint256);\n    function DOMAIN_SEPARATOR() external view returns (bytes32);\n    function EIP712_REVISION() external view returns (bytes memory);\n    function EMISSION_MANAGER() external view returns (address);\n    function EXCHANGE_RATE_UNIT() external view returns (uint256);\n    function INITIAL_EXCHANGE_RATE() external view returns (uint216);\n    function LOWER_BOUND() external view returns (uint256);\n    function PERMIT_TYPEHASH() external view returns (bytes32);\n    function PRECISION() external view returns (uint8);\n    function REVISION() external pure returns (uint256);\n    function REWARDS_VAULT() external view returns (address);\n    function REWARD_TOKEN() external view returns (address);\n    function SLASH_ADMIN_ROLE() external view returns (uint256);\n    function STAKED_TOKEN() external view returns (address);\n    function UNSTAKE_WINDOW() external view returns (uint256);\n    function _aaveGovernance() external view returns (address);\n    function _nonces(address) external view returns (uint256);\n    function _votingSnapshots(address, uint256) external view returns (uint128 blockNumber, uint128 value);\n    function _votingSnapshotsCounts(address) external view returns (uint256);\n    function allowance(address owner, address spender) external view returns (uint256);\n    function approve(address spender, uint256 amount) external returns (bool);\n    function assets(address)\n        external\n        view\n        returns (uint128 emissionPerSecond, uint128 lastUpdateTimestamp, uint256 index);\n    function balanceOf(address account) external view returns (uint256);\n    function claimRewards(address to, uint256 amount) external;\n    function claimRewardsAndRedeem(address to, uint256 claimAmount, uint256 redeemAmount) external;\n    function claimRewardsAndRedeemOnBehalf(address from, address to, uint256 claimAmount, uint256 redeemAmount)\n        external;\n    function claimRewardsAndStake(address to, uint256 amount) external returns (uint256);\n    function claimRewardsAndStakeOnBehalf(address from, address to, uint256 amount) external returns (uint256);\n    function claimRewardsOnBehalf(address from, address to, uint256 amount) external returns (uint256);\n    function claimRoleAdmin(uint256 role) external;\n    function configureAssets(AssetConfigInput[] memory assetsConfigInput) external;\n    function cooldown() external;\n    function cooldownOnBehalfOf(address from) external;\n    function decimals() external view returns (uint8);\n    function decreaseAllowance(address spender, uint256 subtractedValue) external returns (bool);\n    function delegate(address delegatee) external;\n    function delegateBySig(address delegatee, uint256 nonce, uint256 expiry, uint8 v, bytes32 r, bytes32 s) external;\n    function delegateByType(address delegatee, uint8 delegationType) external;\n    function delegateByTypeBySig(\n        address delegatee,\n        uint8 delegationType,\n        uint256 nonce,\n        uint256 expiry,\n        uint8 v,\n        bytes32 r,\n        bytes32 s\n    ) external;\n    function getAdmin(uint256 role) external view returns (address);\n    function getCooldownSeconds() external view returns (uint256);\n    function getDelegateeByType(address delegator, uint8 delegationType) external view returns (address);\n    function getExchangeRate() external view returns (uint216);\n    function getExchangeRateSnapshot(uint32 index) external view returns (ExchangeRateSnapshot memory);\n    function getExchangeRateSnapshotsCount() external view returns (uint32);\n    function getMaxSlashablePercentage() external view returns (uint256);\n    function getPendingAdmin(uint256 role) external view returns (address);\n    function getPowerAtBlock(address user, uint256 blockNumber, uint8 delegationType) external view returns (uint256);\n    function getPowerCurrent(address user, uint8 delegationType) external view returns (uint256);\n    function getTotalRewardsBalance(address staker) external view returns (uint256);\n    function getUserAssetData(address user, address asset) external view returns (uint256);\n    function ghoDebtToken() external view returns (address);\n    function inPostSlashingPeriod() external view returns (bool);\n    function increaseAllowance(address spender, uint256 addedValue) external returns (bool);\n    function initialize(\n        address slashingAdmin,\n        address cooldownPauseAdmin,\n        address claimHelper,\n        uint256 maxSlashablePercentage,\n        uint256 cooldownSeconds\n    ) external;\n    function name() external view returns (string memory);\n    function permit(address owner, address spender, uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s)\n        external;\n    function previewRedeem(uint256 shares) external view returns (uint256);\n    function previewStake(uint256 assets) external view returns (uint256);\n    function redeem(address to, uint256 amount) external;\n    function redeemOnBehalf(address from, address to, uint256 amount) external;\n    function returnFunds(uint256 amount) external;\n    function setCooldownSeconds(uint256 cooldownSeconds) external;\n    function setGHODebtToken(address newGHODebtToken) external;\n    function setMaxSlashablePercentage(uint256 percentage) external;\n    function setPendingAdmin(uint256 role, address newPendingAdmin) external;\n    function settleSlashing() external;\n    function slash(address destination, uint256 amount) external returns (uint256);\n    function stake(address to, uint256 amount) external;\n    function stakeWithPermit(address from, uint256 amount, uint256 deadline, uint8 v, bytes32 r, bytes32 s) external;\n    function stakerRewardsToClaim(address) external view returns (uint256);\n    function stakersCooldowns(address) external view returns (uint40 timestamp, uint216 amount);\n    function symbol() external view returns (string memory);\n    function totalSupply() external view returns (uint256);\n    function totalSupplyAt(uint256) external view returns (uint256);\n    function transfer(address to, uint256 amount) external returns (bool);\n    function transferFrom(address from, address to, uint256 amount) external returns (bool);\n}\n"},"contracts/interfaces/IERC20.sol":{"content":"// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.6.0) (token/ERC20/IERC20.sol)\n\npragma solidity ^0.8.0;\n\n/**\n * @dev Interface of the ERC20 standard as defined in the EIP.\n */\ninterface IERC20 {\n  /**\n   * @dev Emitted when `value` tokens are moved from one account (`from`) to\n   * another (`to`).\n   *\n   * Note that `value` may be zero.\n   */\n  event Transfer(address indexed from, address indexed to, uint256 value);\n\n  /**\n   * @dev Emitted when the allowance of a `spender` for an `owner` is set by\n   * a call to {approve}. `value` is the new allowance.\n   */\n  event Approval(address indexed owner, address indexed spender, uint256 value);\n\n  /**\n   * @dev Returns the amount of tokens in existence.\n   */\n  function totalSupply() external view returns (uint256);\n\n  /**\n   * @dev Returns the amount of tokens owned by `account`.\n   */\n  function balanceOf(address account) external view returns (uint256);\n\n  /**\n   * @dev Moves `amount` tokens from the caller's account to `to`.\n   *\n   * Returns a boolean value indicating whether the operation succeeded.\n   *\n   * Emits a {Transfer} event.\n   */\n  function transfer(address to, uint256 amount) external returns (bool);\n\n  /**\n   * @dev Returns the remaining number of tokens that `spender` will be\n   * allowed to spend on behalf of `owner` through {transferFrom}. This is\n   * zero by default.\n   *\n   * This value changes when {approve} or {transferFrom} are called.\n   */\n  function allowance(address owner, address spender)\n    external\n    view\n    returns (uint256);\n\n  /**\n   * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.\n   *\n   * Returns a boolean value indicating whether the operation succeeded.\n   *\n   * IMPORTANT: Beware that changing an allowance with this method brings the risk\n   * that someone may use both the old and the new allowance by unfortunate\n   * transaction ordering. One possible solution to mitigate this race\n   * condition is to first reduce the spender's allowance to 0 and set the\n   * desired value afterwards:\n   * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n   *\n   * Emits an {Approval} event.\n   */\n  function approve(address spender, uint256 amount) external returns (bool);\n\n  /**\n   * @dev Moves `amount` tokens from `from` to `to` using the\n   * allowance mechanism. `amount` is then deducted from the caller's\n   * allowance.\n   *\n   * Returns a boolean value indicating whether the operation succeeded.\n   *\n   * Emits a {Transfer} event.\n   */\n  function transferFrom(\n    address from,\n    address to,\n    uint256 amount\n  ) external returns (bool);\n}\n"},"contracts/interfaces/IPriceOracle.sol":{"content":"// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\ninterface IPriceOracle {\n  function getAssetPrice(address asset) external view returns (uint256);\n}"},"contracts/interfaces/IStakeUIHelper.sol":{"content":"// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\n/**\n * @title IStakeUIHelper\n * @notice Interface for the StakeUIHelper contract that provides data for the staking UI\n * @author BGD Labs, modified by Pegasys\n */\ninterface IStakeUIHelper {\n  /**\n   * @dev Struct containing cooldown data for a user\n   */\n  struct CooldownData {\n    uint40 timestamp;\n    uint216 amount;\n  }\n\n  /**\n   * @dev Struct containing all staking-related data\n   */\n  struct StakeData {\n    // General data\n    uint256 stakeTokenTotalSupply;\n    uint256 stakeCooldownSeconds;\n    uint256 stakeUnstakeWindow;\n    uint256 rewardTokenPriceEth;\n    uint256 stakeTokenPriceEth;\n    uint256 rewardsPerSecond;\n    uint256 exchangeRate;\n    uint256 distributionEnd;\n    uint256 stakeApy;\n    \n    // User specific data\n    uint256 userStakeTokenBalance;\n    uint256 userUnderlyingTokenBalance;\n    uint256 userRewardsToClaim;\n    uint256 maxSlashable;\n    CooldownData userCooldown;\n  }\n\n  /**\n   * @dev Returns all staking data for a specific user\n   * @param user Address of the user\n   * @return All staking data including general protocol data and user-specific data\n   */\n  function getUserStakeData(address user) external view returns (StakeData memory);\n}"},"contracts/misc/StakeUIHelper.sol":{"content":"// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {AggregatedStakedPSYSV3} from '../interfaces/AggregatedStakedPSYSV3.sol';\nimport {IStakeUIHelper} from '../interfaces/IStakeUIHelper.sol';\nimport {IERC20} from '../interfaces/IERC20.sol';\nimport {IPriceOracle} from '../interfaces/IPriceOracle.sol';\n\n/**\n * @title StakeUIHelper\n * @notice Helper contract to fetch staking data for UI\n * @author BGD Labs, modified by Pegasys\n */\ncontract StakeUIHelper is IStakeUIHelper {\n  IPriceOracle public immutable PRICE_ORACLE;\n\n  address public immutable PSYS;\n  AggregatedStakedPSYSV3 public immutable STAKED_PSYS;\n\n  uint256 constant SECONDS_PER_YEAR = 365 * 24 * 60 * 60;\n  uint256 constant APY_PRECISION = 10000;\n  uint256 constant EXCHANGE_RATE_UNIT = 1e18;\n\n  constructor(\n    IPriceOracle priceOracle,\n    address psys,\n    AggregatedStakedPSYSV3 stkPSYS\n  ) {\n    PRICE_ORACLE = priceOracle;\n    PSYS = psys;\n    STAKED_PSYS = stkPSYS;\n  }\n\n  /**\n   * @dev Fetches all relevant staking data for a user\n   * @param user Address of the user\n   */\n  function getUserStakeData(address user) external view returns (StakeData memory) {\n    StakeData memory data;\n\n    // General staking data\n    data.stakeTokenTotalSupply = STAKED_PSYS.totalSupply();\n    data.stakeCooldownSeconds = STAKED_PSYS.getCooldownSeconds();\n    data.stakeUnstakeWindow = STAKED_PSYS.UNSTAKE_WINDOW();\n    data.rewardTokenPriceEth = PRICE_ORACLE.getAssetPrice(PSYS);\n    data.stakeTokenPriceEth = data.rewardTokenPriceEth;\n    data.exchangeRate = STAKED_PSYS.getExchangeRate();\n    data.maxSlashable = STAKED_PSYS.getMaxSlashablePercentage();\n    \n    // Get rewards distribution data\n    (uint256 rewardsPerSecond, uint256 distributionEnd) = _getRewardsData();\n    data.rewardsPerSecond = rewardsPerSecond;\n    data.distributionEnd = distributionEnd;\n    \n    // Calculate APY considering exchange rate\n    data.stakeApy = _calculateApy(\n      rewardsPerSecond,\n      data.stakeTokenTotalSupply,\n      data.exchangeRate\n    );\n\n    // User specific data\n    if (user != address(0)) {\n      data.userStakeTokenBalance = STAKED_PSYS.balanceOf(user);\n      data.userUnderlyingTokenBalance = IERC20(PSYS).balanceOf(user);\n      data.userRewardsToClaim = STAKED_PSYS.getTotalRewardsBalance(user);\n      (uint40 cooldownTimestamp, uint216 cooldownAmount) = STAKED_PSYS.stakersCooldowns(user);\n      data.userCooldown = CooldownData(cooldownTimestamp, cooldownAmount);\n    }\n\n    return data;\n  }\n\n  /**\n   * @dev Calculates the APY considering exchange rate changes\n   */\n  function _calculateApy(\n    uint256 rewardsPerSecond,\n    uint256 totalSupply,\n    uint256 exchangeRate\n  ) internal pure returns (uint256) {\n    if (totalSupply == 0) return 0;\n    \n    // Adjust for exchange rate\n    uint256 adjustedRewardsPerYear = rewardsPerSecond * SECONDS_PER_YEAR * exchangeRate / EXCHANGE_RATE_UNIT;\n    return (adjustedRewardsPerYear * APY_PRECISION) / totalSupply;\n  }\n\n  /**\n   * @dev Gets current rewards distribution data\n   */\n  function _getRewardsData() internal view returns (uint256, uint256) {\n    address stakingAddress = address(STAKED_PSYS);\n    uint256 distributionEnd = STAKED_PSYS.DISTRIBUTION_END();\n    \n    if (block.timestamp >= distributionEnd) {\n      return (0, distributionEnd);\n    }\n\n    (uint256 emissionPerSecond, , ) = STAKED_PSYS.assets(stakingAddress);\n    return (emissionPerSecond, distributionEnd);\n  }\n}"}},"settings":{"optimizer":{"enabled":true,"runs":200},"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"],"":["ast"]}}}},"output":{"errors":[{"component":"general","errorCode":"1878","formattedMessage":"Warning: SPDX license identifier not provided in source file. Before publishing, consider adding a comment containing \"SPDX-License-Identifier: <SPDX-License>\" to each source file. Use \"SPDX-License-Identifier: UNLICENSED\" for non-open-source code. Please see https://spdx.org for more information.\n--> contracts/interfaces/AggregatedStakedPSYSV3.sol\n\n","message":"SPDX license identifier not provided in source file. Before publishing, consider adding a comment containing \"SPDX-License-Identifier: <SPDX-License>\" to each source file. Use \"SPDX-License-Identifier: UNLICENSED\" for non-open-source code. Please see https://spdx.org for more information.","severity":"warning","sourceLocation":{"end":-1,"file":"contracts/interfaces/AggregatedStakedPSYSV3.sol","start":-1},"type":"Warning"}],"sources":{"contracts/interfaces/AggregatedStakedPSYSV3.sol":{"ast":{"absolutePath":"contracts/interfaces/AggregatedStakedPSYSV3.sol","exportedSymbols":{"AggregatedStakedPSYSV3":[737]},"id":738,"nodeType":"SourceUnit","nodes":[{"id":1,"literals":["solidity","^","0.8",".10"],"nodeType":"PragmaDirective","src":"0:24:0"},{"abstract":false,"baseContracts":[],"canonicalName":"AggregatedStakedPSYSV3","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"id":737,"linearizedBaseContracts":[737],"name":"AggregatedStakedPSYSV3","nameLocation":"36:22:0","nodeType":"ContractDefinition","nodes":[{"anonymous":false,"eventSelector":"8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925","id":9,"name":"Approval","nameLocation":"71:8:0","nodeType":"EventDefinition","parameters":{"id":8,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3,"indexed":true,"mutability":"mutable","name":"owner","nameLocation":"96:5:0","nodeType":"VariableDeclaration","scope":9,"src":"80:21:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2,"name":"address","nodeType":"ElementaryTypeName","src":"80:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":5,"indexed":true,"mutability":"mutable","name":"spender","nameLocation":"119:7:0","nodeType":"VariableDeclaration","scope":9,"src":"103:23:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":4,"name":"address","nodeType":"ElementaryTypeName","src":"103:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":7,"indexed":false,"mutability":"mutable","name":"value","nameLocation":"136:5:0","nodeType":"VariableDeclaration","scope":9,"src":"128:13:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":6,"name":"uint256","nodeType":"ElementaryTypeName","src":"128:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"79:63:0"},"src":"65:78:0"},{"anonymous":false,"eventSelector":"87fa03892a0556cb6b8f97e6d533a150d4d55fcbf275fff5fa003fa636bcc7fa","id":15,"name":"AssetConfigUpdated","nameLocation":"154:18:0","nodeType":"EventDefinition","parameters":{"id":14,"nodeType":"ParameterList","parameters":[{"constant":false,"id":11,"indexed":true,"mutability":"mutable","name":"asset","nameLocation":"189:5:0","nodeType":"VariableDeclaration","scope":15,"src":"173:21:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":10,"name":"address","nodeType":"ElementaryTypeName","src":"173:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":13,"indexed":false,"mutability":"mutable","name":"emission","nameLocation":"204:8:0","nodeType":"VariableDeclaration","scope":15,"src":"196:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":12,"name":"uint256","nodeType":"ElementaryTypeName","src":"196:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"172:41:0"},"src":"148:66:0"},{"anonymous":false,"eventSelector":"5777ca300dfe5bead41006fbce4389794dbc0ed8d6cccebfaf94630aa04184bc","id":21,"name":"AssetIndexUpdated","nameLocation":"225:17:0","nodeType":"EventDefinition","parameters":{"id":20,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17,"indexed":true,"mutability":"mutable","name":"asset","nameLocation":"259:5:0","nodeType":"VariableDeclaration","scope":21,"src":"243:21:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":16,"name":"address","nodeType":"ElementaryTypeName","src":"243:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":19,"indexed":false,"mutability":"mutable","name":"index","nameLocation":"274:5:0","nodeType":"VariableDeclaration","scope":21,"src":"266:13:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":18,"name":"uint256","nodeType":"ElementaryTypeName","src":"266:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"242:38:0"},"src":"219:62:0"},{"anonymous":false,"eventSelector":"8a05f911d8ab7fc50fec37ef4ba7f9bfcb1a3c191c81dcd824ad0946c4e20d65","id":27,"name":"Cooldown","nameLocation":"292:8:0","nodeType":"EventDefinition","parameters":{"id":26,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23,"indexed":true,"mutability":"mutable","name":"user","nameLocation":"317:4:0","nodeType":"VariableDeclaration","scope":27,"src":"301:20:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":22,"name":"address","nodeType":"ElementaryTypeName","src":"301:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":25,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"331:6:0","nodeType":"VariableDeclaration","scope":27,"src":"323:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":24,"name":"uint256","nodeType":"ElementaryTypeName","src":"323:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"300:38:0"},"src":"286:53:0"},{"anonymous":false,"eventSelector":"bbf67247b5c97564e30ffc0a355e71c006836de7b9149e09e3d5d6054cb03355","id":31,"name":"CooldownSecondsChanged","nameLocation":"350:22:0","nodeType":"EventDefinition","parameters":{"id":30,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29,"indexed":false,"mutability":"mutable","name":"cooldownSeconds","nameLocation":"381:15:0","nodeType":"VariableDeclaration","scope":31,"src":"373:23:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28,"name":"uint256","nodeType":"ElementaryTypeName","src":"373:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"372:25:0"},"src":"344:54:0"},{"anonymous":false,"eventSelector":"e8d51c8e11bd570db1734c8ec775785330e77007feed45c43b608ef33ff914bd","id":39,"name":"DelegateChanged","nameLocation":"409:15:0","nodeType":"EventDefinition","parameters":{"id":38,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33,"indexed":true,"mutability":"mutable","name":"delegator","nameLocation":"441:9:0","nodeType":"VariableDeclaration","scope":39,"src":"425:25:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":32,"name":"address","nodeType":"ElementaryTypeName","src":"425:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":35,"indexed":true,"mutability":"mutable","name":"delegatee","nameLocation":"468:9:0","nodeType":"VariableDeclaration","scope":39,"src":"452:25:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":34,"name":"address","nodeType":"ElementaryTypeName","src":"452:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":37,"indexed":false,"mutability":"mutable","name":"delegationType","nameLocation":"485:14:0","nodeType":"VariableDeclaration","scope":39,"src":"479:20:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":36,"name":"uint8","nodeType":"ElementaryTypeName","src":"479:5:0","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"424:76:0"},"src":"403:98:0"},{"anonymous":false,"eventSelector":"a0a19463ee116110c9b282012d9b65cc5522dc38a9520340cbaf3142e550127f","id":47,"name":"DelegatedPowerChanged","nameLocation":"512:21:0","nodeType":"EventDefinition","parameters":{"id":46,"nodeType":"ParameterList","parameters":[{"constant":false,"id":41,"indexed":true,"mutability":"mutable","name":"user","nameLocation":"550:4:0","nodeType":"VariableDeclaration","scope":47,"src":"534:20:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":40,"name":"address","nodeType":"ElementaryTypeName","src":"534:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":43,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"564:6:0","nodeType":"VariableDeclaration","scope":47,"src":"556:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":42,"name":"uint256","nodeType":"ElementaryTypeName","src":"556:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":45,"indexed":false,"mutability":"mutable","name":"delegationType","nameLocation":"578:14:0","nodeType":"VariableDeclaration","scope":47,"src":"572:20:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":44,"name":"uint8","nodeType":"ElementaryTypeName","src":"572:5:0","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"533:60:0"},"src":"506:88:0"},{"anonymous":false,"eventSelector":"a9c433f9734baa3cf48b209454bb0ace054e191f677ba50e74b696c0d35ef262","id":51,"name":"ExchangeRateChanged","nameLocation":"605:19:0","nodeType":"EventDefinition","parameters":{"id":50,"nodeType":"ParameterList","parameters":[{"constant":false,"id":49,"indexed":false,"mutability":"mutable","name":"exchangeRate","nameLocation":"633:12:0","nodeType":"VariableDeclaration","scope":51,"src":"625:20:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint216","typeString":"uint216"},"typeName":{"id":48,"name":"uint216","nodeType":"ElementaryTypeName","src":"625:7:0","typeDescriptions":{"typeIdentifier":"t_uint216","typeString":"uint216"}},"visibility":"internal"}],"src":"624:22:0"},"src":"599:48:0"},{"anonymous":false,"eventSelector":"278e51d3323fbf18b9fb8df3f8b97e31b145bc1146c52e764cf4aa1bfc4ba17d","id":55,"name":"FundsReturned","nameLocation":"658:13:0","nodeType":"EventDefinition","parameters":{"id":54,"nodeType":"ParameterList","parameters":[{"constant":false,"id":53,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"680:6:0","nodeType":"VariableDeclaration","scope":55,"src":"672:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":52,"name":"uint256","nodeType":"ElementaryTypeName","src":"672:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"671:16:0"},"src":"652:36:0"},{"anonymous":false,"eventSelector":"62bbced765bccc9ed93d0bae1b2a8c86e13b4663f8bf27d5936d9d619194c8a9","id":59,"name":"GHODebtTokenChanged","nameLocation":"699:19:0","nodeType":"EventDefinition","parameters":{"id":58,"nodeType":"ParameterList","parameters":[{"constant":false,"id":57,"indexed":true,"mutability":"mutable","name":"newDebtToken","nameLocation":"735:12:0","nodeType":"VariableDeclaration","scope":59,"src":"719:28:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":56,"name":"address","nodeType":"ElementaryTypeName","src":"719:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"718:30:0"},"src":"693:56:0"},{"anonymous":false,"eventSelector":"b79c2d6c7f5c95eec9dc05affc0ed002620a4ec6d72b7b0744cc8638168c600a","id":63,"name":"MaxSlashablePercentageChanged","nameLocation":"760:29:0","nodeType":"EventDefinition","parameters":{"id":62,"nodeType":"ParameterList","parameters":[{"constant":false,"id":61,"indexed":false,"mutability":"mutable","name":"newPercentage","nameLocation":"798:13:0","nodeType":"VariableDeclaration","scope":63,"src":"790:21:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60,"name":"uint256","nodeType":"ElementaryTypeName","src":"790:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"789:23:0"},"src":"754:59:0"},{"anonymous":false,"eventSelector":"c3d1bf52795a20771ee6de3e59948fd83e10db956122d4709a3b86c512963855","id":69,"name":"PendingAdminChanged","nameLocation":"824:19:0","nodeType":"EventDefinition","parameters":{"id":68,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65,"indexed":true,"mutability":"mutable","name":"newPendingAdmin","nameLocation":"860:15:0","nodeType":"VariableDeclaration","scope":69,"src":"844:31:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64,"name":"address","nodeType":"ElementaryTypeName","src":"844:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67,"indexed":false,"mutability":"mutable","name":"role","nameLocation":"885:4:0","nodeType":"VariableDeclaration","scope":69,"src":"877:12:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66,"name":"uint256","nodeType":"ElementaryTypeName","src":"877:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"843:47:0"},"src":"818:73:0"},{"anonymous":false,"eventSelector":"3f693fff038bb8a046aa76d9516190ac7444f7d69cf952c4cbdc086fdef2d6fc","id":79,"name":"Redeem","nameLocation":"902:6:0","nodeType":"EventDefinition","parameters":{"id":78,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71,"indexed":true,"mutability":"mutable","name":"from","nameLocation":"925:4:0","nodeType":"VariableDeclaration","scope":79,"src":"909:20:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70,"name":"address","nodeType":"ElementaryTypeName","src":"909:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73,"indexed":true,"mutability":"mutable","name":"to","nameLocation":"947:2:0","nodeType":"VariableDeclaration","scope":79,"src":"931:18:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72,"name":"address","nodeType":"ElementaryTypeName","src":"931:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75,"indexed":false,"mutability":"mutable","name":"assets","nameLocation":"959:6:0","nodeType":"VariableDeclaration","scope":79,"src":"951:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74,"name":"uint256","nodeType":"ElementaryTypeName","src":"951:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77,"indexed":false,"mutability":"mutable","name":"shares","nameLocation":"975:6:0","nodeType":"VariableDeclaration","scope":79,"src":"967:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76,"name":"uint256","nodeType":"ElementaryTypeName","src":"967:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"908:74:0"},"src":"896:87:0"},{"anonymous":false,"eventSelector":"2468f9268c60ad90e2d49edb0032c8a001e733ae888b3ab8e982edf535be1a76","id":85,"name":"RewardsAccrued","nameLocation":"994:14:0","nodeType":"EventDefinition","parameters":{"id":84,"nodeType":"ParameterList","parameters":[{"constant":false,"id":81,"indexed":false,"mutability":"mutable","name":"user","nameLocation":"1017:4:0","nodeType":"VariableDeclaration","scope":85,"src":"1009:12:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":80,"name":"address","nodeType":"ElementaryTypeName","src":"1009:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":83,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"1031:6:0","nodeType":"VariableDeclaration","scope":85,"src":"1023:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":82,"name":"uint256","nodeType":"ElementaryTypeName","src":"1023:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1008:30:0"},"src":"988:51:0"},{"anonymous":false,"eventSelector":"9310ccfcb8de723f578a9e4282ea9f521f05ae40dc08f3068dfad528a65ee3c7","id":93,"name":"RewardsClaimed","nameLocation":"1050:14:0","nodeType":"EventDefinition","parameters":{"id":92,"nodeType":"ParameterList","parameters":[{"constant":false,"id":87,"indexed":true,"mutability":"mutable","name":"from","nameLocation":"1081:4:0","nodeType":"VariableDeclaration","scope":93,"src":"1065:20:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":86,"name":"address","nodeType":"ElementaryTypeName","src":"1065:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":89,"indexed":true,"mutability":"mutable","name":"to","nameLocation":"1103:2:0","nodeType":"VariableDeclaration","scope":93,"src":"1087:18:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":88,"name":"address","nodeType":"ElementaryTypeName","src":"1087:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":91,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"1115:6:0","nodeType":"VariableDeclaration","scope":93,"src":"1107:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":90,"name":"uint256","nodeType":"ElementaryTypeName","src":"1107:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1064:58:0"},"src":"1044:79:0"},{"anonymous":false,"eventSelector":"83a9ddad961dcb7c6894c9585a16ff7792c2ec8281256a3cc7303ae830152dcf","id":99,"name":"RoleClaimed","nameLocation":"1134:11:0","nodeType":"EventDefinition","parameters":{"id":98,"nodeType":"ParameterList","parameters":[{"constant":false,"id":95,"indexed":true,"mutability":"mutable","name":"newAdmin","nameLocation":"1162:8:0","nodeType":"VariableDeclaration","scope":99,"src":"1146:24:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":94,"name":"address","nodeType":"ElementaryTypeName","src":"1146:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":97,"indexed":false,"mutability":"mutable","name":"role","nameLocation":"1180:4:0","nodeType":"VariableDeclaration","scope":99,"src":"1172:12:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":96,"name":"uint256","nodeType":"ElementaryTypeName","src":"1172:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1145:40:0"},"src":"1128:58:0"},{"anonymous":false,"eventSelector":"4ed05e9673c26d2ed44f7ef6a7f2942df0ee3b5e1e17db4b99f9dcd261a339cd","id":105,"name":"Slashed","nameLocation":"1197:7:0","nodeType":"EventDefinition","parameters":{"id":104,"nodeType":"ParameterList","parameters":[{"constant":false,"id":101,"indexed":true,"mutability":"mutable","name":"destination","nameLocation":"1221:11:0","nodeType":"VariableDeclaration","scope":105,"src":"1205:27:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":100,"name":"address","nodeType":"ElementaryTypeName","src":"1205:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":103,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"1242:6:0","nodeType":"VariableDeclaration","scope":105,"src":"1234:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":102,"name":"uint256","nodeType":"ElementaryTypeName","src":"1234:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1204:45:0"},"src":"1191:59:0"},{"anonymous":false,"eventSelector":"6b55165a8dae04eeace47372de7a71df552116e1e9ceb87df7ffc9b10c83302a","id":109,"name":"SlashingExitWindowDurationChanged","nameLocation":"1261:33:0","nodeType":"EventDefinition","parameters":{"id":108,"nodeType":"ParameterList","parameters":[{"constant":false,"id":107,"indexed":false,"mutability":"mutable","name":"windowSeconds","nameLocation":"1303:13:0","nodeType":"VariableDeclaration","scope":109,"src":"1295:21:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":106,"name":"uint256","nodeType":"ElementaryTypeName","src":"1295:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1294:23:0"},"src":"1255:63:0"},{"anonymous":false,"eventSelector":"cdee157e87ba915be681d4fa3f3d511afe7348eca06448a3accd6ac227fa40af","id":111,"name":"SlashingSettled","nameLocation":"1329:15:0","nodeType":"EventDefinition","parameters":{"id":110,"nodeType":"ParameterList","parameters":[],"src":"1344:2:0"},"src":"1323:24:0"},{"anonymous":false,"eventSelector":"6c86f3fd5118b3aa8bb4f389a617046de0a3d3d477de1a1673d227f802f616dc","id":121,"name":"Staked","nameLocation":"1358:6:0","nodeType":"EventDefinition","parameters":{"id":120,"nodeType":"ParameterList","parameters":[{"constant":false,"id":113,"indexed":true,"mutability":"mutable","name":"from","nameLocation":"1381:4:0","nodeType":"VariableDeclaration","scope":121,"src":"1365:20:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":112,"name":"address","nodeType":"ElementaryTypeName","src":"1365:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":115,"indexed":true,"mutability":"mutable","name":"to","nameLocation":"1403:2:0","nodeType":"VariableDeclaration","scope":121,"src":"1387:18:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":114,"name":"address","nodeType":"ElementaryTypeName","src":"1387:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":117,"indexed":false,"mutability":"mutable","name":"assets","nameLocation":"1415:6:0","nodeType":"VariableDeclaration","scope":121,"src":"1407:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":116,"name":"uint256","nodeType":"ElementaryTypeName","src":"1407:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":119,"indexed":false,"mutability":"mutable","name":"shares","nameLocation":"1431:6:0","nodeType":"VariableDeclaration","scope":121,"src":"1423:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":118,"name":"uint256","nodeType":"ElementaryTypeName","src":"1423:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1364:74:0"},"src":"1352:87:0"},{"anonymous":false,"eventSelector":"ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef","id":129,"name":"Transfer","nameLocation":"1450:8:0","nodeType":"EventDefinition","parameters":{"id":128,"nodeType":"ParameterList","parameters":[{"constant":false,"id":123,"indexed":true,"mutability":"mutable","name":"from","nameLocation":"1475:4:0","nodeType":"VariableDeclaration","scope":129,"src":"1459:20:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":122,"name":"address","nodeType":"ElementaryTypeName","src":"1459:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":125,"indexed":true,"mutability":"mutable","name":"to","nameLocation":"1497:2:0","nodeType":"VariableDeclaration","scope":129,"src":"1481:18:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":124,"name":"address","nodeType":"ElementaryTypeName","src":"1481:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":127,"indexed":false,"mutability":"mutable","name":"value","nameLocation":"1509:5:0","nodeType":"VariableDeclaration","scope":129,"src":"1501:13:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":126,"name":"uint256","nodeType":"ElementaryTypeName","src":"1501:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1458:57:0"},"src":"1444:72:0"},{"anonymous":false,"eventSelector":"bb123b5c06d5408bbea3c4fef481578175cfb432e3b482c6186f02ed9086585b","id":137,"name":"UserIndexUpdated","nameLocation":"1527:16:0","nodeType":"EventDefinition","parameters":{"id":136,"nodeType":"ParameterList","parameters":[{"constant":false,"id":131,"indexed":true,"mutability":"mutable","name":"user","nameLocation":"1560:4:0","nodeType":"VariableDeclaration","scope":137,"src":"1544:20:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":130,"name":"address","nodeType":"ElementaryTypeName","src":"1544:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":133,"indexed":true,"mutability":"mutable","name":"asset","nameLocation":"1582:5:0","nodeType":"VariableDeclaration","scope":137,"src":"1566:21:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":132,"name":"address","nodeType":"ElementaryTypeName","src":"1566:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":135,"indexed":false,"mutability":"mutable","name":"index","nameLocation":"1597:5:0","nodeType":"VariableDeclaration","scope":137,"src":"1589:13:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":134,"name":"uint256","nodeType":"ElementaryTypeName","src":"1589:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1543:60:0"},"src":"1521:83:0"},{"canonicalName":"AggregatedStakedPSYSV3.AssetConfigInput","id":144,"members":[{"constant":false,"id":139,"mutability":"mutable","name":"emissionPerSecond","nameLocation":"1652:17:0","nodeType":"VariableDeclaration","scope":144,"src":"1644:25:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"},"typeName":{"id":138,"name":"uint128","nodeType":"ElementaryTypeName","src":"1644:7:0","typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"}},"visibility":"internal"},{"constant":false,"id":141,"mutability":"mutable","name":"totalStaked","nameLocation":"1687:11:0","nodeType":"VariableDeclaration","scope":144,"src":"1679:19:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":140,"name":"uint256","nodeType":"ElementaryTypeName","src":"1679:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":143,"mutability":"mutable","name":"underlyingAsset","nameLocation":"1716:15:0","nodeType":"VariableDeclaration","scope":144,"src":"1708:23:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":142,"name":"address","nodeType":"ElementaryTypeName","src":"1708:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"AssetConfigInput","nameLocation":"1617:16:0","nodeType":"StructDefinition","scope":737,"src":"1610:128:0","visibility":"public"},{"canonicalName":"AggregatedStakedPSYSV3.ExchangeRateSnapshot","id":149,"members":[{"constant":false,"id":146,"mutability":"mutable","name":"blockNumber","nameLocation":"1789:11:0","nodeType":"VariableDeclaration","scope":149,"src":"1782:18:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint40","typeString":"uint40"},"typeName":{"id":145,"name":"uint40","nodeType":"ElementaryTypeName","src":"1782:6:0","typeDescriptions":{"typeIdentifier":"t_uint40","typeString":"uint40"}},"visibility":"internal"},{"constant":false,"id":148,"mutability":"mutable","name":"value","nameLocation":"1818:5:0","nodeType":"VariableDeclaration","scope":149,"src":"1810:13:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint216","typeString":"uint216"},"typeName":{"id":147,"name":"uint216","nodeType":"ElementaryTypeName","src":"1810:7:0","typeDescriptions":{"typeIdentifier":"t_uint216","typeString":"uint216"}},"visibility":"internal"}],"name":"ExchangeRateSnapshot","nameLocation":"1751:20:0","nodeType":"StructDefinition","scope":737,"src":"1744:86:0","visibility":"public"},{"functionSelector":"dbc0ed8a","id":154,"implemented":false,"kind":"function","modifiers":[],"name":"CLAIM_HELPER_ROLE","nameLocation":"1845:17:0","nodeType":"FunctionDefinition","parameters":{"id":150,"nodeType":"ParameterList","parameters":[],"src":"1862:2:0"},"returnParameters":{"id":153,"nodeType":"ParameterList","parameters":[{"constant":false,"id":152,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":154,"src":"1888:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":151,"name":"uint256","nodeType":"ElementaryTypeName","src":"1888:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1887:9:0"},"scope":737,"src":"1836:61:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"9e3ffce0","id":159,"implemented":false,"kind":"function","modifiers":[],"name":"COOLDOWN_ADMIN_ROLE","nameLocation":"1911:19:0","nodeType":"FunctionDefinition","parameters":{"id":155,"nodeType":"ParameterList","parameters":[],"src":"1930:2:0"},"returnParameters":{"id":158,"nodeType":"ParameterList","parameters":[{"constant":false,"id":157,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":159,"src":"1956:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":156,"name":"uint256","nodeType":"ElementaryTypeName","src":"1956:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1955:9:0"},"scope":737,"src":"1902:63:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"72b49d63","id":164,"implemented":false,"kind":"function","modifiers":[],"name":"COOLDOWN_SECONDS","nameLocation":"1979:16:0","nodeType":"FunctionDefinition","parameters":{"id":160,"nodeType":"ParameterList","parameters":[],"src":"1995:2:0"},"returnParameters":{"id":163,"nodeType":"ParameterList","parameters":[{"constant":false,"id":162,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":164,"src":"2021:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":161,"name":"uint256","nodeType":"ElementaryTypeName","src":"2021:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2020:9:0"},"scope":737,"src":"1970:60:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"aa9fbe02","id":169,"implemented":false,"kind":"function","modifiers":[],"name":"DELEGATE_BY_TYPE_TYPEHASH","nameLocation":"2044:25:0","nodeType":"FunctionDefinition","parameters":{"id":165,"nodeType":"ParameterList","parameters":[],"src":"2069:2:0"},"returnParameters":{"id":168,"nodeType":"ParameterList","parameters":[{"constant":false,"id":167,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":169,"src":"2095:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":166,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2095:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2094:9:0"},"scope":737,"src":"2035:69:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"41cbf54a","id":174,"implemented":false,"kind":"function","modifiers":[],"name":"DELEGATE_TYPEHASH","nameLocation":"2118:17:0","nodeType":"FunctionDefinition","parameters":{"id":170,"nodeType":"ParameterList","parameters":[],"src":"2135:2:0"},"returnParameters":{"id":173,"nodeType":"ParameterList","parameters":[{"constant":false,"id":172,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":174,"src":"2161:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":171,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2161:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2160:9:0"},"scope":737,"src":"2109:61:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"919cd40f","id":179,"implemented":false,"kind":"function","modifiers":[],"name":"DISTRIBUTION_END","nameLocation":"2184:16:0","nodeType":"FunctionDefinition","parameters":{"id":175,"nodeType":"ParameterList","parameters":[],"src":"2200:2:0"},"returnParameters":{"id":178,"nodeType":"ParameterList","parameters":[{"constant":false,"id":177,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":179,"src":"2226:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":176,"name":"uint256","nodeType":"ElementaryTypeName","src":"2226:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2225:9:0"},"scope":737,"src":"2175:60:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"3644e515","id":184,"implemented":false,"kind":"function","modifiers":[],"name":"DOMAIN_SEPARATOR","nameLocation":"2249:16:0","nodeType":"FunctionDefinition","parameters":{"id":180,"nodeType":"ParameterList","parameters":[],"src":"2265:2:0"},"returnParameters":{"id":183,"nodeType":"ParameterList","parameters":[{"constant":false,"id":182,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":184,"src":"2291:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":181,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2291:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2290:9:0"},"scope":737,"src":"2240:60:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"78160376","id":189,"implemented":false,"kind":"function","modifiers":[],"name":"EIP712_REVISION","nameLocation":"2314:15:0","nodeType":"FunctionDefinition","parameters":{"id":185,"nodeType":"ParameterList","parameters":[],"src":"2329:2:0"},"returnParameters":{"id":188,"nodeType":"ParameterList","parameters":[{"constant":false,"id":187,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":189,"src":"2355:12:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":186,"name":"bytes","nodeType":"ElementaryTypeName","src":"2355:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"2354:14:0"},"scope":737,"src":"2305:64:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"cbcbb507","id":194,"implemented":false,"kind":"function","modifiers":[],"name":"EMISSION_MANAGER","nameLocation":"2383:16:0","nodeType":"FunctionDefinition","parameters":{"id":190,"nodeType":"ParameterList","parameters":[],"src":"2399:2:0"},"returnParameters":{"id":193,"nodeType":"ParameterList","parameters":[{"constant":false,"id":192,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":194,"src":"2425:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":191,"name":"address","nodeType":"ElementaryTypeName","src":"2425:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2424:9:0"},"scope":737,"src":"2374:60:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"8e9b2ca4","id":199,"implemented":false,"kind":"function","modifiers":[],"name":"EXCHANGE_RATE_UNIT","nameLocation":"2448:18:0","nodeType":"FunctionDefinition","parameters":{"id":195,"nodeType":"ParameterList","parameters":[],"src":"2466:2:0"},"returnParameters":{"id":198,"nodeType":"ParameterList","parameters":[{"constant":false,"id":197,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":199,"src":"2492:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":196,"name":"uint256","nodeType":"ElementaryTypeName","src":"2492:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2491:9:0"},"scope":737,"src":"2439:62:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"58146d17","id":204,"implemented":false,"kind":"function","modifiers":[],"name":"INITIAL_EXCHANGE_RATE","nameLocation":"2515:21:0","nodeType":"FunctionDefinition","parameters":{"id":200,"nodeType":"ParameterList","parameters":[],"src":"2536:2:0"},"returnParameters":{"id":203,"nodeType":"ParameterList","parameters":[{"constant":false,"id":202,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":204,"src":"2562:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint216","typeString":"uint216"},"typeName":{"id":201,"name":"uint216","nodeType":"ElementaryTypeName","src":"2562:7:0","typeDescriptions":{"typeIdentifier":"t_uint216","typeString":"uint216"}},"visibility":"internal"}],"src":"2561:9:0"},"scope":737,"src":"2506:65:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"6198e135","id":209,"implemented":false,"kind":"function","modifiers":[],"name":"LOWER_BOUND","nameLocation":"2585:11:0","nodeType":"FunctionDefinition","parameters":{"id":205,"nodeType":"ParameterList","parameters":[],"src":"2596:2:0"},"returnParameters":{"id":208,"nodeType":"ParameterList","parameters":[{"constant":false,"id":207,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":209,"src":"2622:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":206,"name":"uint256","nodeType":"ElementaryTypeName","src":"2622:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2621:9:0"},"scope":737,"src":"2576:55:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"30adf81f","id":214,"implemented":false,"kind":"function","modifiers":[],"name":"PERMIT_TYPEHASH","nameLocation":"2645:15:0","nodeType":"FunctionDefinition","parameters":{"id":210,"nodeType":"ParameterList","parameters":[],"src":"2660:2:0"},"returnParameters":{"id":213,"nodeType":"ParameterList","parameters":[{"constant":false,"id":212,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":214,"src":"2686:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":211,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2686:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2685:9:0"},"scope":737,"src":"2636:59:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"aaf5eb68","id":219,"implemented":false,"kind":"function","modifiers":[],"name":"PRECISION","nameLocation":"2709:9:0","nodeType":"FunctionDefinition","parameters":{"id":215,"nodeType":"ParameterList","parameters":[],"src":"2718:2:0"},"returnParameters":{"id":218,"nodeType":"ParameterList","parameters":[{"constant":false,"id":217,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":219,"src":"2744:5:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":216,"name":"uint8","nodeType":"ElementaryTypeName","src":"2744:5:0","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"2743:7:0"},"scope":737,"src":"2700:51:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"dde43cba","id":224,"implemented":false,"kind":"function","modifiers":[],"name":"REVISION","nameLocation":"2765:8:0","nodeType":"FunctionDefinition","parameters":{"id":220,"nodeType":"ParameterList","parameters":[],"src":"2773:2:0"},"returnParameters":{"id":223,"nodeType":"ParameterList","parameters":[{"constant":false,"id":222,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":224,"src":"2799:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":221,"name":"uint256","nodeType":"ElementaryTypeName","src":"2799:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2798:9:0"},"scope":737,"src":"2756:52:0","stateMutability":"pure","virtual":false,"visibility":"external"},{"functionSelector":"946776cd","id":229,"implemented":false,"kind":"function","modifiers":[],"name":"REWARDS_VAULT","nameLocation":"2822:13:0","nodeType":"FunctionDefinition","parameters":{"id":225,"nodeType":"ParameterList","parameters":[],"src":"2835:2:0"},"returnParameters":{"id":228,"nodeType":"ParameterList","parameters":[{"constant":false,"id":227,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":229,"src":"2861:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":226,"name":"address","nodeType":"ElementaryTypeName","src":"2861:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2860:9:0"},"scope":737,"src":"2813:57:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"99248ea7","id":234,"implemented":false,"kind":"function","modifiers":[],"name":"REWARD_TOKEN","nameLocation":"2884:12:0","nodeType":"FunctionDefinition","parameters":{"id":230,"nodeType":"ParameterList","parameters":[],"src":"2896:2:0"},"returnParameters":{"id":233,"nodeType":"ParameterList","parameters":[{"constant":false,"id":232,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":234,"src":"2922:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":231,"name":"address","nodeType":"ElementaryTypeName","src":"2922:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2921:9:0"},"scope":737,"src":"2875:56:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"8c9a281d","id":239,"implemented":false,"kind":"function","modifiers":[],"name":"SLASH_ADMIN_ROLE","nameLocation":"2945:16:0","nodeType":"FunctionDefinition","parameters":{"id":235,"nodeType":"ParameterList","parameters":[],"src":"2961:2:0"},"returnParameters":{"id":238,"nodeType":"ParameterList","parameters":[{"constant":false,"id":237,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":239,"src":"2987:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":236,"name":"uint256","nodeType":"ElementaryTypeName","src":"2987:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2986:9:0"},"scope":737,"src":"2936:60:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"312f6b83","id":244,"implemented":false,"kind":"function","modifiers":[],"name":"STAKED_TOKEN","nameLocation":"3010:12:0","nodeType":"FunctionDefinition","parameters":{"id":240,"nodeType":"ParameterList","parameters":[],"src":"3022:2:0"},"returnParameters":{"id":243,"nodeType":"ParameterList","parameters":[{"constant":false,"id":242,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":244,"src":"3048:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":241,"name":"address","nodeType":"ElementaryTypeName","src":"3048:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3047:9:0"},"scope":737,"src":"3001:56:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"359c4a96","id":249,"implemented":false,"kind":"function","modifiers":[],"name":"UNSTAKE_WINDOW","nameLocation":"3071:14:0","nodeType":"FunctionDefinition","parameters":{"id":245,"nodeType":"ParameterList","parameters":[],"src":"3085:2:0"},"returnParameters":{"id":248,"nodeType":"ParameterList","parameters":[{"constant":false,"id":247,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":249,"src":"3111:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":246,"name":"uint256","nodeType":"ElementaryTypeName","src":"3111:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3110:9:0"},"scope":737,"src":"3062:58:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"c3863ada","id":254,"implemented":false,"kind":"function","modifiers":[],"name":"_aaveGovernance","nameLocation":"3134:15:0","nodeType":"FunctionDefinition","parameters":{"id":250,"nodeType":"ParameterList","parameters":[],"src":"3149:2:0"},"returnParameters":{"id":253,"nodeType":"ParameterList","parameters":[{"constant":false,"id":252,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":254,"src":"3175:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":251,"name":"address","nodeType":"ElementaryTypeName","src":"3175:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3174:9:0"},"scope":737,"src":"3125:59:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"b9844d8d","id":261,"implemented":false,"kind":"function","modifiers":[],"name":"_nonces","nameLocation":"3198:7:0","nodeType":"FunctionDefinition","parameters":{"id":257,"nodeType":"ParameterList","parameters":[{"constant":false,"id":256,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":261,"src":"3206:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":255,"name":"address","nodeType":"ElementaryTypeName","src":"3206:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3205:9:0"},"returnParameters":{"id":260,"nodeType":"ParameterList","parameters":[{"constant":false,"id":259,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":261,"src":"3238:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":258,"name":"uint256","nodeType":"ElementaryTypeName","src":"3238:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3237:9:0"},"scope":737,"src":"3189:58:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"5b3cc0cf","id":272,"implemented":false,"kind":"function","modifiers":[],"name":"_votingSnapshots","nameLocation":"3261:16:0","nodeType":"FunctionDefinition","parameters":{"id":266,"nodeType":"ParameterList","parameters":[{"constant":false,"id":263,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":272,"src":"3278:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":262,"name":"address","nodeType":"ElementaryTypeName","src":"3278:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":265,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":272,"src":"3287:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":264,"name":"uint256","nodeType":"ElementaryTypeName","src":"3287:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3277:18:0"},"returnParameters":{"id":271,"nodeType":"ParameterList","parameters":[{"constant":false,"id":268,"mutability":"mutable","name":"blockNumber","nameLocation":"3327:11:0","nodeType":"VariableDeclaration","scope":272,"src":"3319:19:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"},"typeName":{"id":267,"name":"uint128","nodeType":"ElementaryTypeName","src":"3319:7:0","typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"}},"visibility":"internal"},{"constant":false,"id":270,"mutability":"mutable","name":"value","nameLocation":"3348:5:0","nodeType":"VariableDeclaration","scope":272,"src":"3340:13:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"},"typeName":{"id":269,"name":"uint128","nodeType":"ElementaryTypeName","src":"3340:7:0","typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"}},"visibility":"internal"}],"src":"3318:36:0"},"scope":737,"src":"3252:103:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"7bb73c97","id":279,"implemented":false,"kind":"function","modifiers":[],"name":"_votingSnapshotsCounts","nameLocation":"3369:22:0","nodeType":"FunctionDefinition","parameters":{"id":275,"nodeType":"ParameterList","parameters":[{"constant":false,"id":274,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":279,"src":"3392:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":273,"name":"address","nodeType":"ElementaryTypeName","src":"3392:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3391:9:0"},"returnParameters":{"id":278,"nodeType":"ParameterList","parameters":[{"constant":false,"id":277,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":279,"src":"3424:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":276,"name":"uint256","nodeType":"ElementaryTypeName","src":"3424:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3423:9:0"},"scope":737,"src":"3360:73:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"dd62ed3e","id":288,"implemented":false,"kind":"function","modifiers":[],"name":"allowance","nameLocation":"3447:9:0","nodeType":"FunctionDefinition","parameters":{"id":284,"nodeType":"ParameterList","parameters":[{"constant":false,"id":281,"mutability":"mutable","name":"owner","nameLocation":"3465:5:0","nodeType":"VariableDeclaration","scope":288,"src":"3457:13:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":280,"name":"address","nodeType":"ElementaryTypeName","src":"3457:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":283,"mutability":"mutable","name":"spender","nameLocation":"3480:7:0","nodeType":"VariableDeclaration","scope":288,"src":"3472:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":282,"name":"address","nodeType":"ElementaryTypeName","src":"3472:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3456:32:0"},"returnParameters":{"id":287,"nodeType":"ParameterList","parameters":[{"constant":false,"id":286,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":288,"src":"3512:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":285,"name":"uint256","nodeType":"ElementaryTypeName","src":"3512:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3511:9:0"},"scope":737,"src":"3438:83:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"095ea7b3","id":297,"implemented":false,"kind":"function","modifiers":[],"name":"approve","nameLocation":"3535:7:0","nodeType":"FunctionDefinition","parameters":{"id":293,"nodeType":"ParameterList","parameters":[{"constant":false,"id":290,"mutability":"mutable","name":"spender","nameLocation":"3551:7:0","nodeType":"VariableDeclaration","scope":297,"src":"3543:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":289,"name":"address","nodeType":"ElementaryTypeName","src":"3543:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":292,"mutability":"mutable","name":"amount","nameLocation":"3568:6:0","nodeType":"VariableDeclaration","scope":297,"src":"3560:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":291,"name":"uint256","nodeType":"ElementaryTypeName","src":"3560:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3542:33:0"},"returnParameters":{"id":296,"nodeType":"ParameterList","parameters":[{"constant":false,"id":295,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":297,"src":"3594:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":294,"name":"bool","nodeType":"ElementaryTypeName","src":"3594:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"3593:6:0"},"scope":737,"src":"3526:74:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"f11b8188","id":308,"implemented":false,"kind":"function","modifiers":[],"name":"assets","nameLocation":"3614:6:0","nodeType":"FunctionDefinition","parameters":{"id":300,"nodeType":"ParameterList","parameters":[{"constant":false,"id":299,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":308,"src":"3621:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":298,"name":"address","nodeType":"ElementaryTypeName","src":"3621:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3620:9:0"},"returnParameters":{"id":307,"nodeType":"ParameterList","parameters":[{"constant":false,"id":302,"mutability":"mutable","name":"emissionPerSecond","nameLocation":"3685:17:0","nodeType":"VariableDeclaration","scope":308,"src":"3677:25:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"},"typeName":{"id":301,"name":"uint128","nodeType":"ElementaryTypeName","src":"3677:7:0","typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"}},"visibility":"internal"},{"constant":false,"id":304,"mutability":"mutable","name":"lastUpdateTimestamp","nameLocation":"3712:19:0","nodeType":"VariableDeclaration","scope":308,"src":"3704:27:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"},"typeName":{"id":303,"name":"uint128","nodeType":"ElementaryTypeName","src":"3704:7:0","typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"}},"visibility":"internal"},{"constant":false,"id":306,"mutability":"mutable","name":"index","nameLocation":"3741:5:0","nodeType":"VariableDeclaration","scope":308,"src":"3733:13:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":305,"name":"uint256","nodeType":"ElementaryTypeName","src":"3733:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3676:71:0"},"scope":737,"src":"3605:143:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"70a08231","id":315,"implemented":false,"kind":"function","modifiers":[],"name":"balanceOf","nameLocation":"3762:9:0","nodeType":"FunctionDefinition","parameters":{"id":311,"nodeType":"ParameterList","parameters":[{"constant":false,"id":310,"mutability":"mutable","name":"account","nameLocation":"3780:7:0","nodeType":"VariableDeclaration","scope":315,"src":"3772:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":309,"name":"address","nodeType":"ElementaryTypeName","src":"3772:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3771:17:0"},"returnParameters":{"id":314,"nodeType":"ParameterList","parameters":[{"constant":false,"id":313,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":315,"src":"3812:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":312,"name":"uint256","nodeType":"ElementaryTypeName","src":"3812:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3811:9:0"},"scope":737,"src":"3753:68:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"9a99b4f0","id":322,"implemented":false,"kind":"function","modifiers":[],"name":"claimRewards","nameLocation":"3835:12:0","nodeType":"FunctionDefinition","parameters":{"id":320,"nodeType":"ParameterList","parameters":[{"constant":false,"id":317,"mutability":"mutable","name":"to","nameLocation":"3856:2:0","nodeType":"VariableDeclaration","scope":322,"src":"3848:10:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":316,"name":"address","nodeType":"ElementaryTypeName","src":"3848:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":319,"mutability":"mutable","name":"amount","nameLocation":"3868:6:0","nodeType":"VariableDeclaration","scope":322,"src":"3860:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":318,"name":"uint256","nodeType":"ElementaryTypeName","src":"3860:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3847:28:0"},"returnParameters":{"id":321,"nodeType":"ParameterList","parameters":[],"src":"3884:0:0"},"scope":737,"src":"3826:59:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"eab52318","id":331,"implemented":false,"kind":"function","modifiers":[],"name":"claimRewardsAndRedeem","nameLocation":"3899:21:0","nodeType":"FunctionDefinition","parameters":{"id":329,"nodeType":"ParameterList","parameters":[{"constant":false,"id":324,"mutability":"mutable","name":"to","nameLocation":"3929:2:0","nodeType":"VariableDeclaration","scope":331,"src":"3921:10:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":323,"name":"address","nodeType":"ElementaryTypeName","src":"3921:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":326,"mutability":"mutable","name":"claimAmount","nameLocation":"3941:11:0","nodeType":"VariableDeclaration","scope":331,"src":"3933:19:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":325,"name":"uint256","nodeType":"ElementaryTypeName","src":"3933:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":328,"mutability":"mutable","name":"redeemAmount","nameLocation":"3962:12:0","nodeType":"VariableDeclaration","scope":331,"src":"3954:20:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":327,"name":"uint256","nodeType":"ElementaryTypeName","src":"3954:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3920:55:0"},"returnParameters":{"id":330,"nodeType":"ParameterList","parameters":[],"src":"3984:0:0"},"scope":737,"src":"3890:95:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"9c9b5154","id":342,"implemented":false,"kind":"function","modifiers":[],"name":"claimRewardsAndRedeemOnBehalf","nameLocation":"3999:29:0","nodeType":"FunctionDefinition","parameters":{"id":340,"nodeType":"ParameterList","parameters":[{"constant":false,"id":333,"mutability":"mutable","name":"from","nameLocation":"4037:4:0","nodeType":"VariableDeclaration","scope":342,"src":"4029:12:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":332,"name":"address","nodeType":"ElementaryTypeName","src":"4029:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":335,"mutability":"mutable","name":"to","nameLocation":"4051:2:0","nodeType":"VariableDeclaration","scope":342,"src":"4043:10:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":334,"name":"address","nodeType":"ElementaryTypeName","src":"4043:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":337,"mutability":"mutable","name":"claimAmount","nameLocation":"4063:11:0","nodeType":"VariableDeclaration","scope":342,"src":"4055:19:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":336,"name":"uint256","nodeType":"ElementaryTypeName","src":"4055:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":339,"mutability":"mutable","name":"redeemAmount","nameLocation":"4084:12:0","nodeType":"VariableDeclaration","scope":342,"src":"4076:20:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":338,"name":"uint256","nodeType":"ElementaryTypeName","src":"4076:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4028:69:0"},"returnParameters":{"id":341,"nodeType":"ParameterList","parameters":[],"src":"4114:0:0"},"scope":737,"src":"3990:125:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"955e18af","id":351,"implemented":false,"kind":"function","modifiers":[],"name":"claimRewardsAndStake","nameLocation":"4129:20:0","nodeType":"FunctionDefinition","parameters":{"id":347,"nodeType":"ParameterList","parameters":[{"constant":false,"id":344,"mutability":"mutable","name":"to","nameLocation":"4158:2:0","nodeType":"VariableDeclaration","scope":351,"src":"4150:10:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":343,"name":"address","nodeType":"ElementaryTypeName","src":"4150:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":346,"mutability":"mutable","name":"amount","nameLocation":"4170:6:0","nodeType":"VariableDeclaration","scope":351,"src":"4162:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":345,"name":"uint256","nodeType":"ElementaryTypeName","src":"4162:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4149:28:0"},"returnParameters":{"id":350,"nodeType":"ParameterList","parameters":[{"constant":false,"id":349,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":351,"src":"4196:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":348,"name":"uint256","nodeType":"ElementaryTypeName","src":"4196:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4195:9:0"},"scope":737,"src":"4120:85:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"c18f539a","id":362,"implemented":false,"kind":"function","modifiers":[],"name":"claimRewardsAndStakeOnBehalf","nameLocation":"4219:28:0","nodeType":"FunctionDefinition","parameters":{"id":358,"nodeType":"ParameterList","parameters":[{"constant":false,"id":353,"mutability":"mutable","name":"from","nameLocation":"4256:4:0","nodeType":"VariableDeclaration","scope":362,"src":"4248:12:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":352,"name":"address","nodeType":"ElementaryTypeName","src":"4248:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":355,"mutability":"mutable","name":"to","nameLocation":"4270:2:0","nodeType":"VariableDeclaration","scope":362,"src":"4262:10:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":354,"name":"address","nodeType":"ElementaryTypeName","src":"4262:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":357,"mutability":"mutable","name":"amount","nameLocation":"4282:6:0","nodeType":"VariableDeclaration","scope":362,"src":"4274:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":356,"name":"uint256","nodeType":"ElementaryTypeName","src":"4274:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4247:42:0"},"returnParameters":{"id":361,"nodeType":"ParameterList","parameters":[{"constant":false,"id":360,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":362,"src":"4308:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":359,"name":"uint256","nodeType":"ElementaryTypeName","src":"4308:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4307:9:0"},"scope":737,"src":"4210:107:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"20fb80b5","id":373,"implemented":false,"kind":"function","modifiers":[],"name":"claimRewardsOnBehalf","nameLocation":"4331:20:0","nodeType":"FunctionDefinition","parameters":{"id":369,"nodeType":"ParameterList","parameters":[{"constant":false,"id":364,"mutability":"mutable","name":"from","nameLocation":"4360:4:0","nodeType":"VariableDeclaration","scope":373,"src":"4352:12:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":363,"name":"address","nodeType":"ElementaryTypeName","src":"4352:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":366,"mutability":"mutable","name":"to","nameLocation":"4374:2:0","nodeType":"VariableDeclaration","scope":373,"src":"4366:10:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":365,"name":"address","nodeType":"ElementaryTypeName","src":"4366:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":368,"mutability":"mutable","name":"amount","nameLocation":"4386:6:0","nodeType":"VariableDeclaration","scope":373,"src":"4378:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":367,"name":"uint256","nodeType":"ElementaryTypeName","src":"4378:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4351:42:0"},"returnParameters":{"id":372,"nodeType":"ParameterList","parameters":[{"constant":false,"id":371,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":373,"src":"4412:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":370,"name":"uint256","nodeType":"ElementaryTypeName","src":"4412:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4411:9:0"},"scope":737,"src":"4322:99:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"fde9eb69","id":378,"implemented":false,"kind":"function","modifiers":[],"name":"claimRoleAdmin","nameLocation":"4435:14:0","nodeType":"FunctionDefinition","parameters":{"id":376,"nodeType":"ParameterList","parameters":[{"constant":false,"id":375,"mutability":"mutable","name":"role","nameLocation":"4458:4:0","nodeType":"VariableDeclaration","scope":378,"src":"4450:12:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":374,"name":"uint256","nodeType":"ElementaryTypeName","src":"4450:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4449:14:0"},"returnParameters":{"id":377,"nodeType":"ParameterList","parameters":[],"src":"4472:0:0"},"scope":737,"src":"4426:47:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"b2a5dbfa","id":385,"implemented":false,"kind":"function","modifiers":[],"name":"configureAssets","nameLocation":"4487:15:0","nodeType":"FunctionDefinition","parameters":{"id":383,"nodeType":"ParameterList","parameters":[{"constant":false,"id":382,"mutability":"mutable","name":"assetsConfigInput","nameLocation":"4529:17:0","nodeType":"VariableDeclaration","scope":385,"src":"4503:43:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_AssetConfigInput_$144_memory_ptr_$dyn_memory_ptr","typeString":"struct AggregatedStakedPSYSV3.AssetConfigInput[]"},"typeName":{"baseType":{"id":380,"nodeType":"UserDefinedTypeName","pathNode":{"id":379,"name":"AssetConfigInput","nameLocations":["4503:16:0"],"nodeType":"IdentifierPath","referencedDeclaration":144,"src":"4503:16:0"},"referencedDeclaration":144,"src":"4503:16:0","typeDescriptions":{"typeIdentifier":"t_struct$_AssetConfigInput_$144_storage_ptr","typeString":"struct AggregatedStakedPSYSV3.AssetConfigInput"}},"id":381,"nodeType":"ArrayTypeName","src":"4503:18:0","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_AssetConfigInput_$144_storage_$dyn_storage_ptr","typeString":"struct AggregatedStakedPSYSV3.AssetConfigInput[]"}},"visibility":"internal"}],"src":"4502:45:0"},"returnParameters":{"id":384,"nodeType":"ParameterList","parameters":[],"src":"4556:0:0"},"scope":737,"src":"4478:79:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"787a08a6","id":388,"implemented":false,"kind":"function","modifiers":[],"name":"cooldown","nameLocation":"4571:8:0","nodeType":"FunctionDefinition","parameters":{"id":386,"nodeType":"ParameterList","parameters":[],"src":"4579:2:0"},"returnParameters":{"id":387,"nodeType":"ParameterList","parameters":[],"src":"4590:0:0"},"scope":737,"src":"4562:29:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"250201db","id":393,"implemented":false,"kind":"function","modifiers":[],"name":"cooldownOnBehalfOf","nameLocation":"4605:18:0","nodeType":"FunctionDefinition","parameters":{"id":391,"nodeType":"ParameterList","parameters":[{"constant":false,"id":390,"mutability":"mutable","name":"from","nameLocation":"4632:4:0","nodeType":"VariableDeclaration","scope":393,"src":"4624:12:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":389,"name":"address","nodeType":"ElementaryTypeName","src":"4624:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4623:14:0"},"returnParameters":{"id":392,"nodeType":"ParameterList","parameters":[],"src":"4646:0:0"},"scope":737,"src":"4596:51:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"313ce567","id":398,"implemented":false,"kind":"function","modifiers":[],"name":"decimals","nameLocation":"4661:8:0","nodeType":"FunctionDefinition","parameters":{"id":394,"nodeType":"ParameterList","parameters":[],"src":"4669:2:0"},"returnParameters":{"id":397,"nodeType":"ParameterList","parameters":[{"constant":false,"id":396,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":398,"src":"4695:5:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":395,"name":"uint8","nodeType":"ElementaryTypeName","src":"4695:5:0","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"4694:7:0"},"scope":737,"src":"4652:50:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"a457c2d7","id":407,"implemented":false,"kind":"function","modifiers":[],"name":"decreaseAllowance","nameLocation":"4716:17:0","nodeType":"FunctionDefinition","parameters":{"id":403,"nodeType":"ParameterList","parameters":[{"constant":false,"id":400,"mutability":"mutable","name":"spender","nameLocation":"4742:7:0","nodeType":"VariableDeclaration","scope":407,"src":"4734:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":399,"name":"address","nodeType":"ElementaryTypeName","src":"4734:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":402,"mutability":"mutable","name":"subtractedValue","nameLocation":"4759:15:0","nodeType":"VariableDeclaration","scope":407,"src":"4751:23:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":401,"name":"uint256","nodeType":"ElementaryTypeName","src":"4751:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4733:42:0"},"returnParameters":{"id":406,"nodeType":"ParameterList","parameters":[{"constant":false,"id":405,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":407,"src":"4794:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":404,"name":"bool","nodeType":"ElementaryTypeName","src":"4794:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4793:6:0"},"scope":737,"src":"4707:93:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"5c19a95c","id":412,"implemented":false,"kind":"function","modifiers":[],"name":"delegate","nameLocation":"4814:8:0","nodeType":"FunctionDefinition","parameters":{"id":410,"nodeType":"ParameterList","parameters":[{"constant":false,"id":409,"mutability":"mutable","name":"delegatee","nameLocation":"4831:9:0","nodeType":"VariableDeclaration","scope":412,"src":"4823:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":408,"name":"address","nodeType":"ElementaryTypeName","src":"4823:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4822:19:0"},"returnParameters":{"id":411,"nodeType":"ParameterList","parameters":[],"src":"4850:0:0"},"scope":737,"src":"4805:46:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"c3cda520","id":427,"implemented":false,"kind":"function","modifiers":[],"name":"delegateBySig","nameLocation":"4865:13:0","nodeType":"FunctionDefinition","parameters":{"id":425,"nodeType":"ParameterList","parameters":[{"constant":false,"id":414,"mutability":"mutable","name":"delegatee","nameLocation":"4887:9:0","nodeType":"VariableDeclaration","scope":427,"src":"4879:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":413,"name":"address","nodeType":"ElementaryTypeName","src":"4879:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":416,"mutability":"mutable","name":"nonce","nameLocation":"4906:5:0","nodeType":"VariableDeclaration","scope":427,"src":"4898:13:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":415,"name":"uint256","nodeType":"ElementaryTypeName","src":"4898:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":418,"mutability":"mutable","name":"expiry","nameLocation":"4921:6:0","nodeType":"VariableDeclaration","scope":427,"src":"4913:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":417,"name":"uint256","nodeType":"ElementaryTypeName","src":"4913:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":420,"mutability":"mutable","name":"v","nameLocation":"4935:1:0","nodeType":"VariableDeclaration","scope":427,"src":"4929:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":419,"name":"uint8","nodeType":"ElementaryTypeName","src":"4929:5:0","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":422,"mutability":"mutable","name":"r","nameLocation":"4946:1:0","nodeType":"VariableDeclaration","scope":427,"src":"4938:9:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":421,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4938:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":424,"mutability":"mutable","name":"s","nameLocation":"4957:1:0","nodeType":"VariableDeclaration","scope":427,"src":"4949:9:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":423,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4949:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"4878:81:0"},"returnParameters":{"id":426,"nodeType":"ParameterList","parameters":[],"src":"4968:0:0"},"scope":737,"src":"4856:113:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"dc937e1c","id":434,"implemented":false,"kind":"function","modifiers":[],"name":"delegateByType","nameLocation":"4983:14:0","nodeType":"FunctionDefinition","parameters":{"id":432,"nodeType":"ParameterList","parameters":[{"constant":false,"id":429,"mutability":"mutable","name":"delegatee","nameLocation":"5006:9:0","nodeType":"VariableDeclaration","scope":434,"src":"4998:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":428,"name":"address","nodeType":"ElementaryTypeName","src":"4998:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":431,"mutability":"mutable","name":"delegationType","nameLocation":"5023:14:0","nodeType":"VariableDeclaration","scope":434,"src":"5017:20:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":430,"name":"uint8","nodeType":"ElementaryTypeName","src":"5017:5:0","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"4997:41:0"},"returnParameters":{"id":433,"nodeType":"ParameterList","parameters":[],"src":"5047:0:0"},"scope":737,"src":"4974:74:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"f713d8a8","id":451,"implemented":false,"kind":"function","modifiers":[],"name":"delegateByTypeBySig","nameLocation":"5062:19:0","nodeType":"FunctionDefinition","parameters":{"id":449,"nodeType":"ParameterList","parameters":[{"constant":false,"id":436,"mutability":"mutable","name":"delegatee","nameLocation":"5099:9:0","nodeType":"VariableDeclaration","scope":451,"src":"5091:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":435,"name":"address","nodeType":"ElementaryTypeName","src":"5091:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":438,"mutability":"mutable","name":"delegationType","nameLocation":"5124:14:0","nodeType":"VariableDeclaration","scope":451,"src":"5118:20:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":437,"name":"uint8","nodeType":"ElementaryTypeName","src":"5118:5:0","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":440,"mutability":"mutable","name":"nonce","nameLocation":"5156:5:0","nodeType":"VariableDeclaration","scope":451,"src":"5148:13:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":439,"name":"uint256","nodeType":"ElementaryTypeName","src":"5148:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":442,"mutability":"mutable","name":"expiry","nameLocation":"5179:6:0","nodeType":"VariableDeclaration","scope":451,"src":"5171:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":441,"name":"uint256","nodeType":"ElementaryTypeName","src":"5171:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":444,"mutability":"mutable","name":"v","nameLocation":"5201:1:0","nodeType":"VariableDeclaration","scope":451,"src":"5195:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":443,"name":"uint8","nodeType":"ElementaryTypeName","src":"5195:5:0","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":446,"mutability":"mutable","name":"r","nameLocation":"5220:1:0","nodeType":"VariableDeclaration","scope":451,"src":"5212:9:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":445,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5212:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":448,"mutability":"mutable","name":"s","nameLocation":"5239:1:0","nodeType":"VariableDeclaration","scope":451,"src":"5231:9:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":447,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5231:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"5081:165:0"},"returnParameters":{"id":450,"nodeType":"ParameterList","parameters":[],"src":"5255:0:0"},"scope":737,"src":"5053:203:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"111fd88b","id":458,"implemented":false,"kind":"function","modifiers":[],"name":"getAdmin","nameLocation":"5270:8:0","nodeType":"FunctionDefinition","parameters":{"id":454,"nodeType":"ParameterList","parameters":[{"constant":false,"id":453,"mutability":"mutable","name":"role","nameLocation":"5287:4:0","nodeType":"VariableDeclaration","scope":458,"src":"5279:12:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":452,"name":"uint256","nodeType":"ElementaryTypeName","src":"5279:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5278:14:0"},"returnParameters":{"id":457,"nodeType":"ParameterList","parameters":[{"constant":false,"id":456,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":458,"src":"5316:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":455,"name":"address","nodeType":"ElementaryTypeName","src":"5316:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5315:9:0"},"scope":737,"src":"5261:64:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"616e0bf9","id":463,"implemented":false,"kind":"function","modifiers":[],"name":"getCooldownSeconds","nameLocation":"5339:18:0","nodeType":"FunctionDefinition","parameters":{"id":459,"nodeType":"ParameterList","parameters":[],"src":"5357:2:0"},"returnParameters":{"id":462,"nodeType":"ParameterList","parameters":[{"constant":false,"id":461,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":463,"src":"5383:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":460,"name":"uint256","nodeType":"ElementaryTypeName","src":"5383:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5382:9:0"},"scope":737,"src":"5330:62:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"6f50458d","id":472,"implemented":false,"kind":"function","modifiers":[],"name":"getDelegateeByType","nameLocation":"5406:18:0","nodeType":"FunctionDefinition","parameters":{"id":468,"nodeType":"ParameterList","parameters":[{"constant":false,"id":465,"mutability":"mutable","name":"delegator","nameLocation":"5433:9:0","nodeType":"VariableDeclaration","scope":472,"src":"5425:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":464,"name":"address","nodeType":"ElementaryTypeName","src":"5425:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":467,"mutability":"mutable","name":"delegationType","nameLocation":"5450:14:0","nodeType":"VariableDeclaration","scope":472,"src":"5444:20:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":466,"name":"uint8","nodeType":"ElementaryTypeName","src":"5444:5:0","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"5424:41:0"},"returnParameters":{"id":471,"nodeType":"ParameterList","parameters":[{"constant":false,"id":470,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":472,"src":"5489:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":469,"name":"address","nodeType":"ElementaryTypeName","src":"5489:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5488:9:0"},"scope":737,"src":"5397:101:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"e6aa216c","id":477,"implemented":false,"kind":"function","modifiers":[],"name":"getExchangeRate","nameLocation":"5512:15:0","nodeType":"FunctionDefinition","parameters":{"id":473,"nodeType":"ParameterList","parameters":[],"src":"5527:2:0"},"returnParameters":{"id":476,"nodeType":"ParameterList","parameters":[{"constant":false,"id":475,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":477,"src":"5553:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint216","typeString":"uint216"},"typeName":{"id":474,"name":"uint216","nodeType":"ElementaryTypeName","src":"5553:7:0","typeDescriptions":{"typeIdentifier":"t_uint216","typeString":"uint216"}},"visibility":"internal"}],"src":"5552:9:0"},"scope":737,"src":"5503:59:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"8ef98e0e","id":485,"implemented":false,"kind":"function","modifiers":[],"name":"getExchangeRateSnapshot","nameLocation":"5576:23:0","nodeType":"FunctionDefinition","parameters":{"id":480,"nodeType":"ParameterList","parameters":[{"constant":false,"id":479,"mutability":"mutable","name":"index","nameLocation":"5607:5:0","nodeType":"VariableDeclaration","scope":485,"src":"5600:12:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":478,"name":"uint32","nodeType":"ElementaryTypeName","src":"5600:6:0","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"src":"5599:14:0"},"returnParameters":{"id":484,"nodeType":"ParameterList","parameters":[{"constant":false,"id":483,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":485,"src":"5637:27:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ExchangeRateSnapshot_$149_memory_ptr","typeString":"struct AggregatedStakedPSYSV3.ExchangeRateSnapshot"},"typeName":{"id":482,"nodeType":"UserDefinedTypeName","pathNode":{"id":481,"name":"ExchangeRateSnapshot","nameLocations":["5637:20:0"],"nodeType":"IdentifierPath","referencedDeclaration":149,"src":"5637:20:0"},"referencedDeclaration":149,"src":"5637:20:0","typeDescriptions":{"typeIdentifier":"t_struct$_ExchangeRateSnapshot_$149_storage_ptr","typeString":"struct AggregatedStakedPSYSV3.ExchangeRateSnapshot"}},"visibility":"internal"}],"src":"5636:29:0"},"scope":737,"src":"5567:99:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"60ba192b","id":490,"implemented":false,"kind":"function","modifiers":[],"name":"getExchangeRateSnapshotsCount","nameLocation":"5680:29:0","nodeType":"FunctionDefinition","parameters":{"id":486,"nodeType":"ParameterList","parameters":[],"src":"5709:2:0"},"returnParameters":{"id":489,"nodeType":"ParameterList","parameters":[{"constant":false,"id":488,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":490,"src":"5735:6:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":487,"name":"uint32","nodeType":"ElementaryTypeName","src":"5735:6:0","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"src":"5734:8:0"},"scope":737,"src":"5671:72:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"f34d96da","id":495,"implemented":false,"kind":"function","modifiers":[],"name":"getMaxSlashablePercentage","nameLocation":"5757:25:0","nodeType":"FunctionDefinition","parameters":{"id":491,"nodeType":"ParameterList","parameters":[],"src":"5782:2:0"},"returnParameters":{"id":494,"nodeType":"ParameterList","parameters":[{"constant":false,"id":493,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":495,"src":"5808:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":492,"name":"uint256","nodeType":"ElementaryTypeName","src":"5808:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5807:9:0"},"scope":737,"src":"5748:69:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"4575e69b","id":502,"implemented":false,"kind":"function","modifiers":[],"name":"getPendingAdmin","nameLocation":"5831:15:0","nodeType":"FunctionDefinition","parameters":{"id":498,"nodeType":"ParameterList","parameters":[{"constant":false,"id":497,"mutability":"mutable","name":"role","nameLocation":"5855:4:0","nodeType":"VariableDeclaration","scope":502,"src":"5847:12:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":496,"name":"uint256","nodeType":"ElementaryTypeName","src":"5847:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5846:14:0"},"returnParameters":{"id":501,"nodeType":"ParameterList","parameters":[{"constant":false,"id":500,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":502,"src":"5884:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":499,"name":"address","nodeType":"ElementaryTypeName","src":"5884:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5883:9:0"},"scope":737,"src":"5822:71:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"c2ffbb91","id":513,"implemented":false,"kind":"function","modifiers":[],"name":"getPowerAtBlock","nameLocation":"5907:15:0","nodeType":"FunctionDefinition","parameters":{"id":509,"nodeType":"ParameterList","parameters":[{"constant":false,"id":504,"mutability":"mutable","name":"user","nameLocation":"5931:4:0","nodeType":"VariableDeclaration","scope":513,"src":"5923:12:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":503,"name":"address","nodeType":"ElementaryTypeName","src":"5923:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":506,"mutability":"mutable","name":"blockNumber","nameLocation":"5945:11:0","nodeType":"VariableDeclaration","scope":513,"src":"5937:19:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":505,"name":"uint256","nodeType":"ElementaryTypeName","src":"5937:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":508,"mutability":"mutable","name":"delegationType","nameLocation":"5964:14:0","nodeType":"VariableDeclaration","scope":513,"src":"5958:20:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":507,"name":"uint8","nodeType":"ElementaryTypeName","src":"5958:5:0","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"5922:57:0"},"returnParameters":{"id":512,"nodeType":"ParameterList","parameters":[{"constant":false,"id":511,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":513,"src":"6003:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":510,"name":"uint256","nodeType":"ElementaryTypeName","src":"6003:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6002:9:0"},"scope":737,"src":"5898:114:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"b2f4201d","id":522,"implemented":false,"kind":"function","modifiers":[],"name":"getPowerCurrent","nameLocation":"6026:15:0","nodeType":"FunctionDefinition","parameters":{"id":518,"nodeType":"ParameterList","parameters":[{"constant":false,"id":515,"mutability":"mutable","name":"user","nameLocation":"6050:4:0","nodeType":"VariableDeclaration","scope":522,"src":"6042:12:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":514,"name":"address","nodeType":"ElementaryTypeName","src":"6042:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":517,"mutability":"mutable","name":"delegationType","nameLocation":"6062:14:0","nodeType":"VariableDeclaration","scope":522,"src":"6056:20:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":516,"name":"uint8","nodeType":"ElementaryTypeName","src":"6056:5:0","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"6041:36:0"},"returnParameters":{"id":521,"nodeType":"ParameterList","parameters":[{"constant":false,"id":520,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":522,"src":"6101:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":519,"name":"uint256","nodeType":"ElementaryTypeName","src":"6101:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6100:9:0"},"scope":737,"src":"6017:93:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"8dbefee2","id":529,"implemented":false,"kind":"function","modifiers":[],"name":"getTotalRewardsBalance","nameLocation":"6124:22:0","nodeType":"FunctionDefinition","parameters":{"id":525,"nodeType":"ParameterList","parameters":[{"constant":false,"id":524,"mutability":"mutable","name":"staker","nameLocation":"6155:6:0","nodeType":"VariableDeclaration","scope":529,"src":"6147:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":523,"name":"address","nodeType":"ElementaryTypeName","src":"6147:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6146:16:0"},"returnParameters":{"id":528,"nodeType":"ParameterList","parameters":[{"constant":false,"id":527,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":529,"src":"6186:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":526,"name":"uint256","nodeType":"ElementaryTypeName","src":"6186:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6185:9:0"},"scope":737,"src":"6115:80:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"3373ee4c","id":538,"implemented":false,"kind":"function","modifiers":[],"name":"getUserAssetData","nameLocation":"6209:16:0","nodeType":"FunctionDefinition","parameters":{"id":534,"nodeType":"ParameterList","parameters":[{"constant":false,"id":531,"mutability":"mutable","name":"user","nameLocation":"6234:4:0","nodeType":"VariableDeclaration","scope":538,"src":"6226:12:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":530,"name":"address","nodeType":"ElementaryTypeName","src":"6226:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":533,"mutability":"mutable","name":"asset","nameLocation":"6248:5:0","nodeType":"VariableDeclaration","scope":538,"src":"6240:13:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":532,"name":"address","nodeType":"ElementaryTypeName","src":"6240:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6225:29:0"},"returnParameters":{"id":537,"nodeType":"ParameterList","parameters":[{"constant":false,"id":536,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":538,"src":"6278:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":535,"name":"uint256","nodeType":"ElementaryTypeName","src":"6278:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6277:9:0"},"scope":737,"src":"6200:87:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"174ed542","id":543,"implemented":false,"kind":"function","modifiers":[],"name":"ghoDebtToken","nameLocation":"6301:12:0","nodeType":"FunctionDefinition","parameters":{"id":539,"nodeType":"ParameterList","parameters":[],"src":"6313:2:0"},"returnParameters":{"id":542,"nodeType":"ParameterList","parameters":[{"constant":false,"id":541,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":543,"src":"6339:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":540,"name":"address","nodeType":"ElementaryTypeName","src":"6339:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6338:9:0"},"scope":737,"src":"6292:56:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"f036bc68","id":548,"implemented":false,"kind":"function","modifiers":[],"name":"inPostSlashingPeriod","nameLocation":"6362:20:0","nodeType":"FunctionDefinition","parameters":{"id":544,"nodeType":"ParameterList","parameters":[],"src":"6382:2:0"},"returnParameters":{"id":547,"nodeType":"ParameterList","parameters":[{"constant":false,"id":546,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":548,"src":"6408:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":545,"name":"bool","nodeType":"ElementaryTypeName","src":"6408:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"6407:6:0"},"scope":737,"src":"6353:61:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"39509351","id":557,"implemented":false,"kind":"function","modifiers":[],"name":"increaseAllowance","nameLocation":"6428:17:0","nodeType":"FunctionDefinition","parameters":{"id":553,"nodeType":"ParameterList","parameters":[{"constant":false,"id":550,"mutability":"mutable","name":"spender","nameLocation":"6454:7:0","nodeType":"VariableDeclaration","scope":557,"src":"6446:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":549,"name":"address","nodeType":"ElementaryTypeName","src":"6446:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":552,"mutability":"mutable","name":"addedValue","nameLocation":"6471:10:0","nodeType":"VariableDeclaration","scope":557,"src":"6463:18:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":551,"name":"uint256","nodeType":"ElementaryTypeName","src":"6463:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6445:37:0"},"returnParameters":{"id":556,"nodeType":"ParameterList","parameters":[{"constant":false,"id":555,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":557,"src":"6501:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":554,"name":"bool","nodeType":"ElementaryTypeName","src":"6501:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"6500:6:0"},"scope":737,"src":"6419:88:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"a6b63eb8","id":570,"implemented":false,"kind":"function","modifiers":[],"name":"initialize","nameLocation":"6521:10:0","nodeType":"FunctionDefinition","parameters":{"id":568,"nodeType":"ParameterList","parameters":[{"constant":false,"id":559,"mutability":"mutable","name":"slashingAdmin","nameLocation":"6549:13:0","nodeType":"VariableDeclaration","scope":570,"src":"6541:21:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":558,"name":"address","nodeType":"ElementaryTypeName","src":"6541:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":561,"mutability":"mutable","name":"cooldownPauseAdmin","nameLocation":"6580:18:0","nodeType":"VariableDeclaration","scope":570,"src":"6572:26:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":560,"name":"address","nodeType":"ElementaryTypeName","src":"6572:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":563,"mutability":"mutable","name":"claimHelper","nameLocation":"6616:11:0","nodeType":"VariableDeclaration","scope":570,"src":"6608:19:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":562,"name":"address","nodeType":"ElementaryTypeName","src":"6608:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":565,"mutability":"mutable","name":"maxSlashablePercentage","nameLocation":"6645:22:0","nodeType":"VariableDeclaration","scope":570,"src":"6637:30:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":564,"name":"uint256","nodeType":"ElementaryTypeName","src":"6637:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":567,"mutability":"mutable","name":"cooldownSeconds","nameLocation":"6685:15:0","nodeType":"VariableDeclaration","scope":570,"src":"6677:23:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":566,"name":"uint256","nodeType":"ElementaryTypeName","src":"6677:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6531:175:0"},"returnParameters":{"id":569,"nodeType":"ParameterList","parameters":[],"src":"6715:0:0"},"scope":737,"src":"6512:204:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"06fdde03","id":575,"implemented":false,"kind":"function","modifiers":[],"name":"name","nameLocation":"6730:4:0","nodeType":"FunctionDefinition","parameters":{"id":571,"nodeType":"ParameterList","parameters":[],"src":"6734:2:0"},"returnParameters":{"id":574,"nodeType":"ParameterList","parameters":[{"constant":false,"id":573,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":575,"src":"6760:13:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":572,"name":"string","nodeType":"ElementaryTypeName","src":"6760:6:0","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"6759:15:0"},"scope":737,"src":"6721:54:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"d505accf","id":592,"implemented":false,"kind":"function","modifiers":[],"name":"permit","nameLocation":"6789:6:0","nodeType":"FunctionDefinition","parameters":{"id":590,"nodeType":"ParameterList","parameters":[{"constant":false,"id":577,"mutability":"mutable","name":"owner","nameLocation":"6804:5:0","nodeType":"VariableDeclaration","scope":592,"src":"6796:13:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":576,"name":"address","nodeType":"ElementaryTypeName","src":"6796:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":579,"mutability":"mutable","name":"spender","nameLocation":"6819:7:0","nodeType":"VariableDeclaration","scope":592,"src":"6811:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":578,"name":"address","nodeType":"ElementaryTypeName","src":"6811:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":581,"mutability":"mutable","name":"value","nameLocation":"6836:5:0","nodeType":"VariableDeclaration","scope":592,"src":"6828:13:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":580,"name":"uint256","nodeType":"ElementaryTypeName","src":"6828:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":583,"mutability":"mutable","name":"deadline","nameLocation":"6851:8:0","nodeType":"VariableDeclaration","scope":592,"src":"6843:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":582,"name":"uint256","nodeType":"ElementaryTypeName","src":"6843:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":585,"mutability":"mutable","name":"v","nameLocation":"6867:1:0","nodeType":"VariableDeclaration","scope":592,"src":"6861:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":584,"name":"uint8","nodeType":"ElementaryTypeName","src":"6861:5:0","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":587,"mutability":"mutable","name":"r","nameLocation":"6878:1:0","nodeType":"VariableDeclaration","scope":592,"src":"6870:9:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":586,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6870:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":589,"mutability":"mutable","name":"s","nameLocation":"6889:1:0","nodeType":"VariableDeclaration","scope":592,"src":"6881:9:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":588,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6881:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"6795:96:0"},"returnParameters":{"id":591,"nodeType":"ParameterList","parameters":[],"src":"6908:0:0"},"scope":737,"src":"6780:129:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"4cdad506","id":599,"implemented":false,"kind":"function","modifiers":[],"name":"previewRedeem","nameLocation":"6923:13:0","nodeType":"FunctionDefinition","parameters":{"id":595,"nodeType":"ParameterList","parameters":[{"constant":false,"id":594,"mutability":"mutable","name":"shares","nameLocation":"6945:6:0","nodeType":"VariableDeclaration","scope":599,"src":"6937:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":593,"name":"uint256","nodeType":"ElementaryTypeName","src":"6937:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6936:16:0"},"returnParameters":{"id":598,"nodeType":"ParameterList","parameters":[{"constant":false,"id":597,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":599,"src":"6976:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":596,"name":"uint256","nodeType":"ElementaryTypeName","src":"6976:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6975:9:0"},"scope":737,"src":"6914:71:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"727a5d57","id":606,"implemented":false,"kind":"function","modifiers":[],"name":"previewStake","nameLocation":"6999:12:0","nodeType":"FunctionDefinition","parameters":{"id":602,"nodeType":"ParameterList","parameters":[{"constant":false,"id":601,"mutability":"mutable","name":"assets","nameLocation":"7020:6:0","nodeType":"VariableDeclaration","scope":606,"src":"7012:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":600,"name":"uint256","nodeType":"ElementaryTypeName","src":"7012:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7011:16:0"},"returnParameters":{"id":605,"nodeType":"ParameterList","parameters":[{"constant":false,"id":604,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":606,"src":"7051:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":603,"name":"uint256","nodeType":"ElementaryTypeName","src":"7051:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7050:9:0"},"scope":737,"src":"6990:70:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"1e9a6950","id":613,"implemented":false,"kind":"function","modifiers":[],"name":"redeem","nameLocation":"7074:6:0","nodeType":"FunctionDefinition","parameters":{"id":611,"nodeType":"ParameterList","parameters":[{"constant":false,"id":608,"mutability":"mutable","name":"to","nameLocation":"7089:2:0","nodeType":"VariableDeclaration","scope":613,"src":"7081:10:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":607,"name":"address","nodeType":"ElementaryTypeName","src":"7081:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":610,"mutability":"mutable","name":"amount","nameLocation":"7101:6:0","nodeType":"VariableDeclaration","scope":613,"src":"7093:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":609,"name":"uint256","nodeType":"ElementaryTypeName","src":"7093:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7080:28:0"},"returnParameters":{"id":612,"nodeType":"ParameterList","parameters":[],"src":"7117:0:0"},"scope":737,"src":"7065:53:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"112d037c","id":622,"implemented":false,"kind":"function","modifiers":[],"name":"redeemOnBehalf","nameLocation":"7132:14:0","nodeType":"FunctionDefinition","parameters":{"id":620,"nodeType":"ParameterList","parameters":[{"constant":false,"id":615,"mutability":"mutable","name":"from","nameLocation":"7155:4:0","nodeType":"VariableDeclaration","scope":622,"src":"7147:12:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":614,"name":"address","nodeType":"ElementaryTypeName","src":"7147:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":617,"mutability":"mutable","name":"to","nameLocation":"7169:2:0","nodeType":"VariableDeclaration","scope":622,"src":"7161:10:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":616,"name":"address","nodeType":"ElementaryTypeName","src":"7161:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":619,"mutability":"mutable","name":"amount","nameLocation":"7181:6:0","nodeType":"VariableDeclaration","scope":622,"src":"7173:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":618,"name":"uint256","nodeType":"ElementaryTypeName","src":"7173:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7146:42:0"},"returnParameters":{"id":621,"nodeType":"ParameterList","parameters":[],"src":"7197:0:0"},"scope":737,"src":"7123:75:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"45755dd6","id":627,"implemented":false,"kind":"function","modifiers":[],"name":"returnFunds","nameLocation":"7212:11:0","nodeType":"FunctionDefinition","parameters":{"id":625,"nodeType":"ParameterList","parameters":[{"constant":false,"id":624,"mutability":"mutable","name":"amount","nameLocation":"7232:6:0","nodeType":"VariableDeclaration","scope":627,"src":"7224:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":623,"name":"uint256","nodeType":"ElementaryTypeName","src":"7224:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7223:16:0"},"returnParameters":{"id":626,"nodeType":"ParameterList","parameters":[],"src":"7248:0:0"},"scope":737,"src":"7203:46:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"7b5b1157","id":632,"implemented":false,"kind":"function","modifiers":[],"name":"setCooldownSeconds","nameLocation":"7263:18:0","nodeType":"FunctionDefinition","parameters":{"id":630,"nodeType":"ParameterList","parameters":[{"constant":false,"id":629,"mutability":"mutable","name":"cooldownSeconds","nameLocation":"7290:15:0","nodeType":"VariableDeclaration","scope":632,"src":"7282:23:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":628,"name":"uint256","nodeType":"ElementaryTypeName","src":"7282:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7281:25:0"},"returnParameters":{"id":631,"nodeType":"ParameterList","parameters":[],"src":"7315:0:0"},"scope":737,"src":"7254:62:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"4998fffd","id":637,"implemented":false,"kind":"function","modifiers":[],"name":"setGHODebtToken","nameLocation":"7330:15:0","nodeType":"FunctionDefinition","parameters":{"id":635,"nodeType":"ParameterList","parameters":[{"constant":false,"id":634,"mutability":"mutable","name":"newGHODebtToken","nameLocation":"7354:15:0","nodeType":"VariableDeclaration","scope":637,"src":"7346:23:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":633,"name":"address","nodeType":"ElementaryTypeName","src":"7346:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7345:25:0"},"returnParameters":{"id":636,"nodeType":"ParameterList","parameters":[],"src":"7379:0:0"},"scope":737,"src":"7321:59:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"74011f56","id":642,"implemented":false,"kind":"function","modifiers":[],"name":"setMaxSlashablePercentage","nameLocation":"7394:25:0","nodeType":"FunctionDefinition","parameters":{"id":640,"nodeType":"ParameterList","parameters":[{"constant":false,"id":639,"mutability":"mutable","name":"percentage","nameLocation":"7428:10:0","nodeType":"VariableDeclaration","scope":642,"src":"7420:18:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":638,"name":"uint256","nodeType":"ElementaryTypeName","src":"7420:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7419:20:0"},"returnParameters":{"id":641,"nodeType":"ParameterList","parameters":[],"src":"7448:0:0"},"scope":737,"src":"7385:64:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"ab406fe6","id":649,"implemented":false,"kind":"function","modifiers":[],"name":"setPendingAdmin","nameLocation":"7463:15:0","nodeType":"FunctionDefinition","parameters":{"id":647,"nodeType":"ParameterList","parameters":[{"constant":false,"id":644,"mutability":"mutable","name":"role","nameLocation":"7487:4:0","nodeType":"VariableDeclaration","scope":649,"src":"7479:12:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":643,"name":"uint256","nodeType":"ElementaryTypeName","src":"7479:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":646,"mutability":"mutable","name":"newPendingAdmin","nameLocation":"7501:15:0","nodeType":"VariableDeclaration","scope":649,"src":"7493:23:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":645,"name":"address","nodeType":"ElementaryTypeName","src":"7493:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7478:39:0"},"returnParameters":{"id":648,"nodeType":"ParameterList","parameters":[],"src":"7526:0:0"},"scope":737,"src":"7454:73:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"aff05aa9","id":652,"implemented":false,"kind":"function","modifiers":[],"name":"settleSlashing","nameLocation":"7541:14:0","nodeType":"FunctionDefinition","parameters":{"id":650,"nodeType":"ParameterList","parameters":[],"src":"7555:2:0"},"returnParameters":{"id":651,"nodeType":"ParameterList","parameters":[],"src":"7566:0:0"},"scope":737,"src":"7532:35:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"02fb4d85","id":661,"implemented":false,"kind":"function","modifiers":[],"name":"slash","nameLocation":"7581:5:0","nodeType":"FunctionDefinition","parameters":{"id":657,"nodeType":"ParameterList","parameters":[{"constant":false,"id":654,"mutability":"mutable","name":"destination","nameLocation":"7595:11:0","nodeType":"VariableDeclaration","scope":661,"src":"7587:19:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":653,"name":"address","nodeType":"ElementaryTypeName","src":"7587:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":656,"mutability":"mutable","name":"amount","nameLocation":"7616:6:0","nodeType":"VariableDeclaration","scope":661,"src":"7608:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":655,"name":"uint256","nodeType":"ElementaryTypeName","src":"7608:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7586:37:0"},"returnParameters":{"id":660,"nodeType":"ParameterList","parameters":[{"constant":false,"id":659,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":661,"src":"7642:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":658,"name":"uint256","nodeType":"ElementaryTypeName","src":"7642:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7641:9:0"},"scope":737,"src":"7572:79:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"adc9772e","id":668,"implemented":false,"kind":"function","modifiers":[],"name":"stake","nameLocation":"7665:5:0","nodeType":"FunctionDefinition","parameters":{"id":666,"nodeType":"ParameterList","parameters":[{"constant":false,"id":663,"mutability":"mutable","name":"to","nameLocation":"7679:2:0","nodeType":"VariableDeclaration","scope":668,"src":"7671:10:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":662,"name":"address","nodeType":"ElementaryTypeName","src":"7671:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":665,"mutability":"mutable","name":"amount","nameLocation":"7691:6:0","nodeType":"VariableDeclaration","scope":668,"src":"7683:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":664,"name":"uint256","nodeType":"ElementaryTypeName","src":"7683:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7670:28:0"},"returnParameters":{"id":667,"nodeType":"ParameterList","parameters":[],"src":"7707:0:0"},"scope":737,"src":"7656:52:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"73d6a889","id":683,"implemented":false,"kind":"function","modifiers":[],"name":"stakeWithPermit","nameLocation":"7722:15:0","nodeType":"FunctionDefinition","parameters":{"id":681,"nodeType":"ParameterList","parameters":[{"constant":false,"id":670,"mutability":"mutable","name":"from","nameLocation":"7746:4:0","nodeType":"VariableDeclaration","scope":683,"src":"7738:12:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":669,"name":"address","nodeType":"ElementaryTypeName","src":"7738:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":672,"mutability":"mutable","name":"amount","nameLocation":"7760:6:0","nodeType":"VariableDeclaration","scope":683,"src":"7752:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":671,"name":"uint256","nodeType":"ElementaryTypeName","src":"7752:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":674,"mutability":"mutable","name":"deadline","nameLocation":"7776:8:0","nodeType":"VariableDeclaration","scope":683,"src":"7768:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":673,"name":"uint256","nodeType":"ElementaryTypeName","src":"7768:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":676,"mutability":"mutable","name":"v","nameLocation":"7792:1:0","nodeType":"VariableDeclaration","scope":683,"src":"7786:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":675,"name":"uint8","nodeType":"ElementaryTypeName","src":"7786:5:0","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":678,"mutability":"mutable","name":"r","nameLocation":"7803:1:0","nodeType":"VariableDeclaration","scope":683,"src":"7795:9:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":677,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7795:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":680,"mutability":"mutable","name":"s","nameLocation":"7814:1:0","nodeType":"VariableDeclaration","scope":683,"src":"7806:9:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":679,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7806:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"7737:79:0"},"returnParameters":{"id":682,"nodeType":"ParameterList","parameters":[],"src":"7825:0:0"},"scope":737,"src":"7713:113:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"7e90d7ef","id":690,"implemented":false,"kind":"function","modifiers":[],"name":"stakerRewardsToClaim","nameLocation":"7840:20:0","nodeType":"FunctionDefinition","parameters":{"id":686,"nodeType":"ParameterList","parameters":[{"constant":false,"id":685,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":690,"src":"7861:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":684,"name":"address","nodeType":"ElementaryTypeName","src":"7861:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7860:9:0"},"returnParameters":{"id":689,"nodeType":"ParameterList","parameters":[{"constant":false,"id":688,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":690,"src":"7893:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":687,"name":"uint256","nodeType":"ElementaryTypeName","src":"7893:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7892:9:0"},"scope":737,"src":"7831:71:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"091030c3","id":699,"implemented":false,"kind":"function","modifiers":[],"name":"stakersCooldowns","nameLocation":"7916:16:0","nodeType":"FunctionDefinition","parameters":{"id":693,"nodeType":"ParameterList","parameters":[{"constant":false,"id":692,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":699,"src":"7933:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":691,"name":"address","nodeType":"ElementaryTypeName","src":"7933:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7932:9:0"},"returnParameters":{"id":698,"nodeType":"ParameterList","parameters":[{"constant":false,"id":695,"mutability":"mutable","name":"timestamp","nameLocation":"7972:9:0","nodeType":"VariableDeclaration","scope":699,"src":"7965:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint40","typeString":"uint40"},"typeName":{"id":694,"name":"uint40","nodeType":"ElementaryTypeName","src":"7965:6:0","typeDescriptions":{"typeIdentifier":"t_uint40","typeString":"uint40"}},"visibility":"internal"},{"constant":false,"id":697,"mutability":"mutable","name":"amount","nameLocation":"7991:6:0","nodeType":"VariableDeclaration","scope":699,"src":"7983:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint216","typeString":"uint216"},"typeName":{"id":696,"name":"uint216","nodeType":"ElementaryTypeName","src":"7983:7:0","typeDescriptions":{"typeIdentifier":"t_uint216","typeString":"uint216"}},"visibility":"internal"}],"src":"7964:34:0"},"scope":737,"src":"7907:92:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"95d89b41","id":704,"implemented":false,"kind":"function","modifiers":[],"name":"symbol","nameLocation":"8013:6:0","nodeType":"FunctionDefinition","parameters":{"id":700,"nodeType":"ParameterList","parameters":[],"src":"8019:2:0"},"returnParameters":{"id":703,"nodeType":"ParameterList","parameters":[{"constant":false,"id":702,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":704,"src":"8045:13:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":701,"name":"string","nodeType":"ElementaryTypeName","src":"8045:6:0","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"8044:15:0"},"scope":737,"src":"8004:56:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"18160ddd","id":709,"implemented":false,"kind":"function","modifiers":[],"name":"totalSupply","nameLocation":"8074:11:0","nodeType":"FunctionDefinition","parameters":{"id":705,"nodeType":"ParameterList","parameters":[],"src":"8085:2:0"},"returnParameters":{"id":708,"nodeType":"ParameterList","parameters":[{"constant":false,"id":707,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":709,"src":"8111:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":706,"name":"uint256","nodeType":"ElementaryTypeName","src":"8111:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"8110:9:0"},"scope":737,"src":"8065:55:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"981b24d0","id":716,"implemented":false,"kind":"function","modifiers":[],"name":"totalSupplyAt","nameLocation":"8134:13:0","nodeType":"FunctionDefinition","parameters":{"id":712,"nodeType":"ParameterList","parameters":[{"constant":false,"id":711,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":716,"src":"8148:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":710,"name":"uint256","nodeType":"ElementaryTypeName","src":"8148:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"8147:9:0"},"returnParameters":{"id":715,"nodeType":"ParameterList","parameters":[{"constant":false,"id":714,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":716,"src":"8180:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":713,"name":"uint256","nodeType":"ElementaryTypeName","src":"8180:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"8179:9:0"},"scope":737,"src":"8125:64:0","stateMutability":"view","virtual":false,"visibility":"external"},{"functionSelector":"a9059cbb","id":725,"implemented":false,"kind":"function","modifiers":[],"name":"transfer","nameLocation":"8203:8:0","nodeType":"FunctionDefinition","parameters":{"id":721,"nodeType":"ParameterList","parameters":[{"constant":false,"id":718,"mutability":"mutable","name":"to","nameLocation":"8220:2:0","nodeType":"VariableDeclaration","scope":725,"src":"8212:10:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":717,"name":"address","nodeType":"ElementaryTypeName","src":"8212:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":720,"mutability":"mutable","name":"amount","nameLocation":"8232:6:0","nodeType":"VariableDeclaration","scope":725,"src":"8224:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":719,"name":"uint256","nodeType":"ElementaryTypeName","src":"8224:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"8211:28:0"},"returnParameters":{"id":724,"nodeType":"ParameterList","parameters":[{"constant":false,"id":723,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":725,"src":"8258:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":722,"name":"bool","nodeType":"ElementaryTypeName","src":"8258:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"8257:6:0"},"scope":737,"src":"8194:70:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"functionSelector":"23b872dd","id":736,"implemented":false,"kind":"function","modifiers":[],"name":"transferFrom","nameLocation":"8278:12:0","nodeType":"FunctionDefinition","parameters":{"id":732,"nodeType":"ParameterList","parameters":[{"constant":false,"id":727,"mutability":"mutable","name":"from","nameLocation":"8299:4:0","nodeType":"VariableDeclaration","scope":736,"src":"8291:12:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":726,"name":"address","nodeType":"ElementaryTypeName","src":"8291:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":729,"mutability":"mutable","name":"to","nameLocation":"8313:2:0","nodeType":"VariableDeclaration","scope":736,"src":"8305:10:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":728,"name":"address","nodeType":"ElementaryTypeName","src":"8305:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":731,"mutability":"mutable","name":"amount","nameLocation":"8325:6:0","nodeType":"VariableDeclaration","scope":736,"src":"8317:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":730,"name":"uint256","nodeType":"ElementaryTypeName","src":"8317:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"8290:42:0"},"returnParameters":{"id":735,"nodeType":"ParameterList","parameters":[{"constant":false,"id":734,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":736,"src":"8351:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":733,"name":"bool","nodeType":"ElementaryTypeName","src":"8351:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"8350:6:0"},"scope":737,"src":"8269:88:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"scope":738,"src":"26:8333:0","usedErrors":[],"usedEvents":[9,15,21,27,31,39,47,51,55,59,63,69,79,85,93,99,105,109,111,121,129,137]}],"src":"0:8360:0"},"id":0},"contracts/interfaces/IERC20.sol":{"ast":{"absolutePath":"contracts/interfaces/IERC20.sol","exportedSymbols":{"IERC20":[815]},"id":816,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":739,"literals":["solidity","^","0.8",".0"],"nodeType":"PragmaDirective","src":"106:23:1"},{"abstract":false,"baseContracts":[],"canonicalName":"IERC20","contractDependencies":[],"contractKind":"interface","documentation":{"id":740,"nodeType":"StructuredDocumentation","src":"131:70:1","text":" @dev Interface of the ERC20 standard as defined in the EIP."},"fullyImplemented":false,"id":815,"linearizedBaseContracts":[815],"name":"IERC20","nameLocation":"212:6:1","nodeType":"ContractDefinition","nodes":[{"anonymous":false,"documentation":{"id":741,"nodeType":"StructuredDocumentation","src":"223:148:1","text":" @dev Emitted when `value` tokens are moved from one account (`from`) to\n another (`to`).\n Note that `value` may be zero."},"eventSelector":"ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef","id":749,"name":"Transfer","nameLocation":"380:8:1","nodeType":"EventDefinition","parameters":{"id":748,"nodeType":"ParameterList","parameters":[{"constant":false,"id":743,"indexed":true,"mutability":"mutable","name":"from","nameLocation":"405:4:1","nodeType":"VariableDeclaration","scope":749,"src":"389:20:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":742,"name":"address","nodeType":"ElementaryTypeName","src":"389:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":745,"indexed":true,"mutability":"mutable","name":"to","nameLocation":"427:2:1","nodeType":"VariableDeclaration","scope":749,"src":"411:18:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":744,"name":"address","nodeType":"ElementaryTypeName","src":"411:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":747,"indexed":false,"mutability":"mutable","name":"value","nameLocation":"439:5:1","nodeType":"VariableDeclaration","scope":749,"src":"431:13:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":746,"name":"uint256","nodeType":"ElementaryTypeName","src":"431:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"388:57:1"},"src":"374:72:1"},{"anonymous":false,"documentation":{"id":750,"nodeType":"StructuredDocumentation","src":"450:142:1","text":" @dev Emitted when the allowance of a `spender` for an `owner` is set by\n a call to {approve}. `value` is the new allowance."},"eventSelector":"8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925","id":758,"name":"Approval","nameLocation":"601:8:1","nodeType":"EventDefinition","parameters":{"id":757,"nodeType":"ParameterList","parameters":[{"constant":false,"id":752,"indexed":true,"mutability":"mutable","name":"owner","nameLocation":"626:5:1","nodeType":"VariableDeclaration","scope":758,"src":"610:21:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":751,"name":"address","nodeType":"ElementaryTypeName","src":"610:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":754,"indexed":true,"mutability":"mutable","name":"spender","nameLocation":"649:7:1","nodeType":"VariableDeclaration","scope":758,"src":"633:23:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":753,"name":"address","nodeType":"ElementaryTypeName","src":"633:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":756,"indexed":false,"mutability":"mutable","name":"value","nameLocation":"666:5:1","nodeType":"VariableDeclaration","scope":758,"src":"658:13:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":755,"name":"uint256","nodeType":"ElementaryTypeName","src":"658:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"609:63:1"},"src":"595:78:1"},{"documentation":{"id":759,"nodeType":"StructuredDocumentation","src":"677:62:1","text":" @dev Returns the amount of tokens in existence."},"functionSelector":"18160ddd","id":764,"implemented":false,"kind":"function","modifiers":[],"name":"totalSupply","nameLocation":"751:11:1","nodeType":"FunctionDefinition","parameters":{"id":760,"nodeType":"ParameterList","parameters":[],"src":"762:2:1"},"returnParameters":{"id":763,"nodeType":"ParameterList","parameters":[{"constant":false,"id":762,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":764,"src":"788:7:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":761,"name":"uint256","nodeType":"ElementaryTypeName","src":"788:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"787:9:1"},"scope":815,"src":"742:55:1","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":765,"nodeType":"StructuredDocumentation","src":"801:68:1","text":" @dev Returns the amount of tokens owned by `account`."},"functionSelector":"70a08231","id":772,"implemented":false,"kind":"function","modifiers":[],"name":"balanceOf","nameLocation":"881:9:1","nodeType":"FunctionDefinition","parameters":{"id":768,"nodeType":"ParameterList","parameters":[{"constant":false,"id":767,"mutability":"mutable","name":"account","nameLocation":"899:7:1","nodeType":"VariableDeclaration","scope":772,"src":"891:15:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":766,"name":"address","nodeType":"ElementaryTypeName","src":"891:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"890:17:1"},"returnParameters":{"id":771,"nodeType":"ParameterList","parameters":[{"constant":false,"id":770,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":772,"src":"931:7:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":769,"name":"uint256","nodeType":"ElementaryTypeName","src":"931:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"930:9:1"},"scope":815,"src":"872:68:1","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":773,"nodeType":"StructuredDocumentation","src":"944:190:1","text":" @dev Moves `amount` tokens from the caller's account to `to`.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event."},"functionSelector":"a9059cbb","id":782,"implemented":false,"kind":"function","modifiers":[],"name":"transfer","nameLocation":"1146:8:1","nodeType":"FunctionDefinition","parameters":{"id":778,"nodeType":"ParameterList","parameters":[{"constant":false,"id":775,"mutability":"mutable","name":"to","nameLocation":"1163:2:1","nodeType":"VariableDeclaration","scope":782,"src":"1155:10:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":774,"name":"address","nodeType":"ElementaryTypeName","src":"1155:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":777,"mutability":"mutable","name":"amount","nameLocation":"1175:6:1","nodeType":"VariableDeclaration","scope":782,"src":"1167:14:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":776,"name":"uint256","nodeType":"ElementaryTypeName","src":"1167:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1154:28:1"},"returnParameters":{"id":781,"nodeType":"ParameterList","parameters":[{"constant":false,"id":780,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":782,"src":"1201:4:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":779,"name":"bool","nodeType":"ElementaryTypeName","src":"1201:4:1","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1200:6:1"},"scope":815,"src":"1137:70:1","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"documentation":{"id":783,"nodeType":"StructuredDocumentation","src":"1211:252:1","text":" @dev Returns the remaining number of tokens that `spender` will be\n allowed to spend on behalf of `owner` through {transferFrom}. This is\n zero by default.\n This value changes when {approve} or {transferFrom} are called."},"functionSelector":"dd62ed3e","id":792,"implemented":false,"kind":"function","modifiers":[],"name":"allowance","nameLocation":"1475:9:1","nodeType":"FunctionDefinition","parameters":{"id":788,"nodeType":"ParameterList","parameters":[{"constant":false,"id":785,"mutability":"mutable","name":"owner","nameLocation":"1493:5:1","nodeType":"VariableDeclaration","scope":792,"src":"1485:13:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":784,"name":"address","nodeType":"ElementaryTypeName","src":"1485:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":787,"mutability":"mutable","name":"spender","nameLocation":"1508:7:1","nodeType":"VariableDeclaration","scope":792,"src":"1500:15:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":786,"name":"address","nodeType":"ElementaryTypeName","src":"1500:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1484:32:1"},"returnParameters":{"id":791,"nodeType":"ParameterList","parameters":[{"constant":false,"id":790,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":792,"src":"1552:7:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":789,"name":"uint256","nodeType":"ElementaryTypeName","src":"1552:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1551:9:1"},"scope":815,"src":"1466:95:1","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":793,"nodeType":"StructuredDocumentation","src":"1565:616:1","text":" @dev Sets `amount` as the allowance of `spender` over the caller's tokens.\n Returns a boolean value indicating whether the operation succeeded.\n IMPORTANT: Beware that changing an allowance with this method brings the risk\n that someone may use both the old and the new allowance by unfortunate\n transaction ordering. One possible solution to mitigate this race\n condition is to first reduce the spender's allowance to 0 and set the\n desired value afterwards:\n https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n Emits an {Approval} event."},"functionSelector":"095ea7b3","id":802,"implemented":false,"kind":"function","modifiers":[],"name":"approve","nameLocation":"2193:7:1","nodeType":"FunctionDefinition","parameters":{"id":798,"nodeType":"ParameterList","parameters":[{"constant":false,"id":795,"mutability":"mutable","name":"spender","nameLocation":"2209:7:1","nodeType":"VariableDeclaration","scope":802,"src":"2201:15:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":794,"name":"address","nodeType":"ElementaryTypeName","src":"2201:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":797,"mutability":"mutable","name":"amount","nameLocation":"2226:6:1","nodeType":"VariableDeclaration","scope":802,"src":"2218:14:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":796,"name":"uint256","nodeType":"ElementaryTypeName","src":"2218:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2200:33:1"},"returnParameters":{"id":801,"nodeType":"ParameterList","parameters":[{"constant":false,"id":800,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":802,"src":"2252:4:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":799,"name":"bool","nodeType":"ElementaryTypeName","src":"2252:4:1","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2251:6:1"},"scope":815,"src":"2184:74:1","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"documentation":{"id":803,"nodeType":"StructuredDocumentation","src":"2262:271:1","text":" @dev Moves `amount` tokens from `from` to `to` using the\n allowance mechanism. `amount` is then deducted from the caller's\n allowance.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event."},"functionSelector":"23b872dd","id":814,"implemented":false,"kind":"function","modifiers":[],"name":"transferFrom","nameLocation":"2545:12:1","nodeType":"FunctionDefinition","parameters":{"id":810,"nodeType":"ParameterList","parameters":[{"constant":false,"id":805,"mutability":"mutable","name":"from","nameLocation":"2571:4:1","nodeType":"VariableDeclaration","scope":814,"src":"2563:12:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":804,"name":"address","nodeType":"ElementaryTypeName","src":"2563:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":807,"mutability":"mutable","name":"to","nameLocation":"2589:2:1","nodeType":"VariableDeclaration","scope":814,"src":"2581:10:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":806,"name":"address","nodeType":"ElementaryTypeName","src":"2581:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":809,"mutability":"mutable","name":"amount","nameLocation":"2605:6:1","nodeType":"VariableDeclaration","scope":814,"src":"2597:14:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":808,"name":"uint256","nodeType":"ElementaryTypeName","src":"2597:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2557:58:1"},"returnParameters":{"id":813,"nodeType":"ParameterList","parameters":[{"constant":false,"id":812,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":814,"src":"2634:4:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":811,"name":"bool","nodeType":"ElementaryTypeName","src":"2634:4:1","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2633:6:1"},"scope":815,"src":"2536:104:1","stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"scope":816,"src":"202:2440:1","usedErrors":[],"usedEvents":[749,758]}],"src":"106:2537:1"},"id":1},"contracts/interfaces/IPriceOracle.sol":{"ast":{"absolutePath":"contracts/interfaces/IPriceOracle.sol","exportedSymbols":{"IPriceOracle":[825]},"id":826,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":817,"literals":["solidity","^","0.8",".0"],"nodeType":"PragmaDirective","src":"32:23:2"},{"abstract":false,"baseContracts":[],"canonicalName":"IPriceOracle","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"id":825,"linearizedBaseContracts":[825],"name":"IPriceOracle","nameLocation":"67:12:2","nodeType":"ContractDefinition","nodes":[{"functionSelector":"b3596f07","id":824,"implemented":false,"kind":"function","modifiers":[],"name":"getAssetPrice","nameLocation":"93:13:2","nodeType":"FunctionDefinition","parameters":{"id":820,"nodeType":"ParameterList","parameters":[{"constant":false,"id":819,"mutability":"mutable","name":"asset","nameLocation":"115:5:2","nodeType":"VariableDeclaration","scope":824,"src":"107:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":818,"name":"address","nodeType":"ElementaryTypeName","src":"107:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"106:15:2"},"returnParameters":{"id":823,"nodeType":"ParameterList","parameters":[{"constant":false,"id":822,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":824,"src":"145:7:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":821,"name":"uint256","nodeType":"ElementaryTypeName","src":"145:7:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"144:9:2"},"scope":825,"src":"84:70:2","stateMutability":"view","virtual":false,"visibility":"external"}],"scope":826,"src":"57:99:2","usedErrors":[],"usedEvents":[]}],"src":"32:124:2"},"id":2},"contracts/interfaces/IStakeUIHelper.sol":{"ast":{"absolutePath":"contracts/interfaces/IStakeUIHelper.sol","exportedSymbols":{"IStakeUIHelper":[875]},"id":876,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":827,"literals":["solidity","^","0.8",".0"],"nodeType":"PragmaDirective","src":"32:23:3"},{"abstract":false,"baseContracts":[],"canonicalName":"IStakeUIHelper","contractDependencies":[],"contractKind":"interface","documentation":{"id":828,"nodeType":"StructuredDocumentation","src":"57:163:3","text":" @title IStakeUIHelper\n @notice Interface for the StakeUIHelper contract that provides data for the staking UI\n @author BGD Labs, modified by Pegasys"},"fullyImplemented":false,"id":875,"linearizedBaseContracts":[875],"name":"IStakeUIHelper","nameLocation":"231:14:3","nodeType":"ContractDefinition","nodes":[{"canonicalName":"IStakeUIHelper.CooldownData","documentation":{"id":829,"nodeType":"StructuredDocumentation","src":"250:62:3","text":" @dev Struct containing cooldown data for a user"},"id":834,"members":[{"constant":false,"id":831,"mutability":"mutable","name":"timestamp","nameLocation":"348:9:3","nodeType":"VariableDeclaration","scope":834,"src":"341:16:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint40","typeString":"uint40"},"typeName":{"id":830,"name":"uint40","nodeType":"ElementaryTypeName","src":"341:6:3","typeDescriptions":{"typeIdentifier":"t_uint40","typeString":"uint40"}},"visibility":"internal"},{"constant":false,"id":833,"mutability":"mutable","name":"amount","nameLocation":"371:6:3","nodeType":"VariableDeclaration","scope":834,"src":"363:14:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint216","typeString":"uint216"},"typeName":{"id":832,"name":"uint216","nodeType":"ElementaryTypeName","src":"363:7:3","typeDescriptions":{"typeIdentifier":"t_uint216","typeString":"uint216"}},"visibility":"internal"}],"name":"CooldownData","nameLocation":"322:12:3","nodeType":"StructDefinition","scope":875,"src":"315:67:3","visibility":"public"},{"canonicalName":"IStakeUIHelper.StakeData","documentation":{"id":835,"nodeType":"StructuredDocumentation","src":"386:62:3","text":" @dev Struct containing all staking-related data"},"id":865,"members":[{"constant":false,"id":837,"mutability":"mutable","name":"stakeTokenTotalSupply","nameLocation":"502:21:3","nodeType":"VariableDeclaration","scope":865,"src":"494:29:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":836,"name":"uint256","nodeType":"ElementaryTypeName","src":"494:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":839,"mutability":"mutable","name":"stakeCooldownSeconds","nameLocation":"537:20:3","nodeType":"VariableDeclaration","scope":865,"src":"529:28:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":838,"name":"uint256","nodeType":"ElementaryTypeName","src":"529:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":841,"mutability":"mutable","name":"stakeUnstakeWindow","nameLocation":"571:18:3","nodeType":"VariableDeclaration","scope":865,"src":"563:26:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":840,"name":"uint256","nodeType":"ElementaryTypeName","src":"563:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":843,"mutability":"mutable","name":"rewardTokenPriceEth","nameLocation":"603:19:3","nodeType":"VariableDeclaration","scope":865,"src":"595:27:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":842,"name":"uint256","nodeType":"ElementaryTypeName","src":"595:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":845,"mutability":"mutable","name":"stakeTokenPriceEth","nameLocation":"636:18:3","nodeType":"VariableDeclaration","scope":865,"src":"628:26:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":844,"name":"uint256","nodeType":"ElementaryTypeName","src":"628:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":847,"mutability":"mutable","name":"rewardsPerSecond","nameLocation":"668:16:3","nodeType":"VariableDeclaration","scope":865,"src":"660:24:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":846,"name":"uint256","nodeType":"ElementaryTypeName","src":"660:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":849,"mutability":"mutable","name":"exchangeRate","nameLocation":"698:12:3","nodeType":"VariableDeclaration","scope":865,"src":"690:20:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":848,"name":"uint256","nodeType":"ElementaryTypeName","src":"690:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":851,"mutability":"mutable","name":"distributionEnd","nameLocation":"724:15:3","nodeType":"VariableDeclaration","scope":865,"src":"716:23:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":850,"name":"uint256","nodeType":"ElementaryTypeName","src":"716:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":853,"mutability":"mutable","name":"stakeApy","nameLocation":"753:8:3","nodeType":"VariableDeclaration","scope":865,"src":"745:16:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":852,"name":"uint256","nodeType":"ElementaryTypeName","src":"745:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":855,"mutability":"mutable","name":"userStakeTokenBalance","nameLocation":"806:21:3","nodeType":"VariableDeclaration","scope":865,"src":"798:29:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":854,"name":"uint256","nodeType":"ElementaryTypeName","src":"798:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":857,"mutability":"mutable","name":"userUnderlyingTokenBalance","nameLocation":"841:26:3","nodeType":"VariableDeclaration","scope":865,"src":"833:34:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":856,"name":"uint256","nodeType":"ElementaryTypeName","src":"833:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":859,"mutability":"mutable","name":"userRewardsToClaim","nameLocation":"881:18:3","nodeType":"VariableDeclaration","scope":865,"src":"873:26:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":858,"name":"uint256","nodeType":"ElementaryTypeName","src":"873:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":861,"mutability":"mutable","name":"maxSlashable","nameLocation":"913:12:3","nodeType":"VariableDeclaration","scope":865,"src":"905:20:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":860,"name":"uint256","nodeType":"ElementaryTypeName","src":"905:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":864,"mutability":"mutable","name":"userCooldown","nameLocation":"944:12:3","nodeType":"VariableDeclaration","scope":865,"src":"931:25:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CooldownData_$834_storage_ptr","typeString":"struct IStakeUIHelper.CooldownData"},"typeName":{"id":863,"nodeType":"UserDefinedTypeName","pathNode":{"id":862,"name":"CooldownData","nameLocations":["931:12:3"],"nodeType":"IdentifierPath","referencedDeclaration":834,"src":"931:12:3"},"referencedDeclaration":834,"src":"931:12:3","typeDescriptions":{"typeIdentifier":"t_struct$_CooldownData_$834_storage_ptr","typeString":"struct IStakeUIHelper.CooldownData"}},"visibility":"internal"}],"name":"StakeData","nameLocation":"458:9:3","nodeType":"StructDefinition","scope":875,"src":"451:510:3","visibility":"public"},{"documentation":{"id":866,"nodeType":"StructuredDocumentation","src":"965:186:3","text":" @dev Returns all staking data for a specific user\n @param user Address of the user\n @return All staking data including general protocol data and user-specific data"},"functionSelector":"e9ce34a5","id":874,"implemented":false,"kind":"function","modifiers":[],"name":"getUserStakeData","nameLocation":"1163:16:3","nodeType":"FunctionDefinition","parameters":{"id":869,"nodeType":"ParameterList","parameters":[{"constant":false,"id":868,"mutability":"mutable","name":"user","nameLocation":"1188:4:3","nodeType":"VariableDeclaration","scope":874,"src":"1180:12:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":867,"name":"address","nodeType":"ElementaryTypeName","src":"1180:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1179:14:3"},"returnParameters":{"id":873,"nodeType":"ParameterList","parameters":[{"constant":false,"id":872,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":874,"src":"1217:16:3","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData"},"typeName":{"id":871,"nodeType":"UserDefinedTypeName","pathNode":{"id":870,"name":"StakeData","nameLocations":["1217:9:3"],"nodeType":"IdentifierPath","referencedDeclaration":865,"src":"1217:9:3"},"referencedDeclaration":865,"src":"1217:9:3","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_storage_ptr","typeString":"struct IStakeUIHelper.StakeData"}},"visibility":"internal"}],"src":"1216:18:3"},"scope":875,"src":"1154:81:3","stateMutability":"view","virtual":false,"visibility":"external"}],"scope":876,"src":"221:1016:3","usedErrors":[],"usedEvents":[]}],"src":"32:1205:3"},"id":3},"contracts/misc/StakeUIHelper.sol":{"ast":{"absolutePath":"contracts/misc/StakeUIHelper.sol","exportedSymbols":{"AggregatedStakedPSYSV3":[737],"IERC20":[815],"IPriceOracle":[825],"IStakeUIHelper":[875],"StakeUIHelper":[1173]},"id":1174,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":877,"literals":["solidity","^","0.8",".0"],"nodeType":"PragmaDirective","src":"32:23:4"},{"absolutePath":"contracts/interfaces/AggregatedStakedPSYSV3.sol","file":"../interfaces/AggregatedStakedPSYSV3.sol","id":879,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":1174,"sourceUnit":738,"src":"57:80:4","symbolAliases":[{"foreign":{"id":878,"name":"AggregatedStakedPSYSV3","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":737,"src":"65:22:4","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"absolutePath":"contracts/interfaces/IStakeUIHelper.sol","file":"../interfaces/IStakeUIHelper.sol","id":881,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":1174,"sourceUnit":876,"src":"138:64:4","symbolAliases":[{"foreign":{"id":880,"name":"IStakeUIHelper","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":875,"src":"146:14:4","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"absolutePath":"contracts/interfaces/IERC20.sol","file":"../interfaces/IERC20.sol","id":883,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":1174,"sourceUnit":816,"src":"203:48:4","symbolAliases":[{"foreign":{"id":882,"name":"IERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":815,"src":"211:6:4","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"absolutePath":"contracts/interfaces/IPriceOracle.sol","file":"../interfaces/IPriceOracle.sol","id":885,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":1174,"sourceUnit":826,"src":"252:60:4","symbolAliases":[{"foreign":{"id":884,"name":"IPriceOracle","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":825,"src":"260:12:4","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"abstract":false,"baseContracts":[{"baseName":{"id":887,"name":"IStakeUIHelper","nameLocations":["469:14:4"],"nodeType":"IdentifierPath","referencedDeclaration":875,"src":"469:14:4"},"id":888,"nodeType":"InheritanceSpecifier","src":"469:14:4"}],"canonicalName":"StakeUIHelper","contractDependencies":[],"contractKind":"contract","documentation":{"id":886,"nodeType":"StructuredDocumentation","src":"314:128:4","text":" @title StakeUIHelper\n @notice Helper contract to fetch staking data for UI\n @author BGD Labs, modified by Pegasys"},"fullyImplemented":true,"id":1173,"linearizedBaseContracts":[1173,875],"name":"StakeUIHelper","nameLocation":"452:13:4","nodeType":"ContractDefinition","nodes":[{"constant":false,"functionSelector":"0a19399a","id":891,"mutability":"immutable","name":"PRICE_ORACLE","nameLocation":"518:12:4","nodeType":"VariableDeclaration","scope":1173,"src":"488:42:4","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IPriceOracle_$825","typeString":"contract IPriceOracle"},"typeName":{"id":890,"nodeType":"UserDefinedTypeName","pathNode":{"id":889,"name":"IPriceOracle","nameLocations":["488:12:4"],"nodeType":"IdentifierPath","referencedDeclaration":825,"src":"488:12:4"},"referencedDeclaration":825,"src":"488:12:4","typeDescriptions":{"typeIdentifier":"t_contract$_IPriceOracle_$825","typeString":"contract IPriceOracle"}},"visibility":"public"},{"constant":false,"functionSelector":"4ac79d96","id":893,"mutability":"immutable","name":"PSYS","nameLocation":"560:4:4","nodeType":"VariableDeclaration","scope":1173,"src":"535:29:4","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":892,"name":"address","nodeType":"ElementaryTypeName","src":"535:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"constant":false,"functionSelector":"e0fdf79f","id":896,"mutability":"immutable","name":"STAKED_PSYS","nameLocation":"608:11:4","nodeType":"VariableDeclaration","scope":1173,"src":"568:51:4","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_AggregatedStakedPSYSV3_$737","typeString":"contract AggregatedStakedPSYSV3"},"typeName":{"id":895,"nodeType":"UserDefinedTypeName","pathNode":{"id":894,"name":"AggregatedStakedPSYSV3","nameLocations":["568:22:4"],"nodeType":"IdentifierPath","referencedDeclaration":737,"src":"568:22:4"},"referencedDeclaration":737,"src":"568:22:4","typeDescriptions":{"typeIdentifier":"t_contract$_AggregatedStakedPSYSV3_$737","typeString":"contract AggregatedStakedPSYSV3"}},"visibility":"public"},{"constant":true,"id":905,"mutability":"constant","name":"SECONDS_PER_YEAR","nameLocation":"641:16:4","nodeType":"VariableDeclaration","scope":1173,"src":"624:54:4","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":897,"name":"uint256","nodeType":"ElementaryTypeName","src":"624:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_31536000_by_1","typeString":"int_const 31536000"},"id":904,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_rational_525600_by_1","typeString":"int_const 525600"},"id":902,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_rational_8760_by_1","typeString":"int_const 8760"},"id":900,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"333635","id":898,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"660:3:4","typeDescriptions":{"typeIdentifier":"t_rational_365_by_1","typeString":"int_const 365"},"value":"365"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"3234","id":899,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"666:2:4","typeDescriptions":{"typeIdentifier":"t_rational_24_by_1","typeString":"int_const 24"},"value":"24"},"src":"660:8:4","typeDescriptions":{"typeIdentifier":"t_rational_8760_by_1","typeString":"int_const 8760"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"3630","id":901,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"671:2:4","typeDescriptions":{"typeIdentifier":"t_rational_60_by_1","typeString":"int_const 60"},"value":"60"},"src":"660:13:4","typeDescriptions":{"typeIdentifier":"t_rational_525600_by_1","typeString":"int_const 525600"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"3630","id":903,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"676:2:4","typeDescriptions":{"typeIdentifier":"t_rational_60_by_1","typeString":"int_const 60"},"value":"60"},"src":"660:18:4","typeDescriptions":{"typeIdentifier":"t_rational_31536000_by_1","typeString":"int_const 31536000"}},"visibility":"internal"},{"constant":true,"id":908,"mutability":"constant","name":"APY_PRECISION","nameLocation":"699:13:4","nodeType":"VariableDeclaration","scope":1173,"src":"682:38:4","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":906,"name":"uint256","nodeType":"ElementaryTypeName","src":"682:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130303030","id":907,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"715:5:4","typeDescriptions":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"},"value":"10000"},"visibility":"internal"},{"constant":true,"id":911,"mutability":"constant","name":"EXCHANGE_RATE_UNIT","nameLocation":"741:18:4","nodeType":"VariableDeclaration","scope":1173,"src":"724:42:4","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":909,"name":"uint256","nodeType":"ElementaryTypeName","src":"724:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"31653138","id":910,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"762:4:4","typeDescriptions":{"typeIdentifier":"t_rational_1000000000000000000_by_1","typeString":"int_const 1000000000000000000"},"value":"1e18"},"visibility":"internal"},{"body":{"id":934,"nodeType":"Block","src":"871:81:4","statements":[{"expression":{"id":924,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":922,"name":"PRICE_ORACLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":891,"src":"877:12:4","typeDescriptions":{"typeIdentifier":"t_contract$_IPriceOracle_$825","typeString":"contract IPriceOracle"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":923,"name":"priceOracle","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":914,"src":"892:11:4","typeDescriptions":{"typeIdentifier":"t_contract$_IPriceOracle_$825","typeString":"contract IPriceOracle"}},"src":"877:26:4","typeDescriptions":{"typeIdentifier":"t_contract$_IPriceOracle_$825","typeString":"contract IPriceOracle"}},"id":925,"nodeType":"ExpressionStatement","src":"877:26:4"},{"expression":{"id":928,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":926,"name":"PSYS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":893,"src":"909:4:4","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":927,"name":"psys","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":916,"src":"916:4:4","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"909:11:4","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":929,"nodeType":"ExpressionStatement","src":"909:11:4"},{"expression":{"id":932,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":930,"name":"STAKED_PSYS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":896,"src":"926:11:4","typeDescriptions":{"typeIdentifier":"t_contract$_AggregatedStakedPSYSV3_$737","typeString":"contract AggregatedStakedPSYSV3"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":931,"name":"stkPSYS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":919,"src":"940:7:4","typeDescriptions":{"typeIdentifier":"t_contract$_AggregatedStakedPSYSV3_$737","typeString":"contract AggregatedStakedPSYSV3"}},"src":"926:21:4","typeDescriptions":{"typeIdentifier":"t_contract$_AggregatedStakedPSYSV3_$737","typeString":"contract AggregatedStakedPSYSV3"}},"id":933,"nodeType":"ExpressionStatement","src":"926:21:4"}]},"id":935,"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":920,"nodeType":"ParameterList","parameters":[{"constant":false,"id":914,"mutability":"mutable","name":"priceOracle","nameLocation":"801:11:4","nodeType":"VariableDeclaration","scope":935,"src":"788:24:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IPriceOracle_$825","typeString":"contract IPriceOracle"},"typeName":{"id":913,"nodeType":"UserDefinedTypeName","pathNode":{"id":912,"name":"IPriceOracle","nameLocations":["788:12:4"],"nodeType":"IdentifierPath","referencedDeclaration":825,"src":"788:12:4"},"referencedDeclaration":825,"src":"788:12:4","typeDescriptions":{"typeIdentifier":"t_contract$_IPriceOracle_$825","typeString":"contract IPriceOracle"}},"visibility":"internal"},{"constant":false,"id":916,"mutability":"mutable","name":"psys","nameLocation":"826:4:4","nodeType":"VariableDeclaration","scope":935,"src":"818:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":915,"name":"address","nodeType":"ElementaryTypeName","src":"818:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":919,"mutability":"mutable","name":"stkPSYS","nameLocation":"859:7:4","nodeType":"VariableDeclaration","scope":935,"src":"836:30:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_AggregatedStakedPSYSV3_$737","typeString":"contract AggregatedStakedPSYSV3"},"typeName":{"id":918,"nodeType":"UserDefinedTypeName","pathNode":{"id":917,"name":"AggregatedStakedPSYSV3","nameLocations":["836:22:4"],"nodeType":"IdentifierPath","referencedDeclaration":737,"src":"836:22:4"},"referencedDeclaration":737,"src":"836:22:4","typeDescriptions":{"typeIdentifier":"t_contract$_AggregatedStakedPSYSV3_$737","typeString":"contract AggregatedStakedPSYSV3"}},"visibility":"internal"}],"src":"782:88:4"},"returnParameters":{"id":921,"nodeType":"ParameterList","parameters":[],"src":"871:0:4"},"scope":1173,"src":"771:181:4","stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"baseFunctions":[874],"body":{"id":1092,"nodeType":"Block","src":"1141:1332:4","statements":[{"assignments":[946],"declarations":[{"constant":false,"id":946,"mutability":"mutable","name":"data","nameLocation":"1164:4:4","nodeType":"VariableDeclaration","scope":1092,"src":"1147:21:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData"},"typeName":{"id":945,"nodeType":"UserDefinedTypeName","pathNode":{"id":944,"name":"StakeData","nameLocations":["1147:9:4"],"nodeType":"IdentifierPath","referencedDeclaration":865,"src":"1147:9:4"},"referencedDeclaration":865,"src":"1147:9:4","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_storage_ptr","typeString":"struct IStakeUIHelper.StakeData"}},"visibility":"internal"}],"id":947,"nodeType":"VariableDeclarationStatement","src":"1147:21:4"},{"expression":{"id":954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":948,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":946,"src":"1203:4:4","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData memory"}},"id":950,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"1208:21:4","memberName":"stakeTokenTotalSupply","nodeType":"MemberAccess","referencedDeclaration":837,"src":"1203:26:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":951,"name":"STAKED_PSYS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":896,"src":"1232:11:4","typeDescriptions":{"typeIdentifier":"t_contract$_AggregatedStakedPSYSV3_$737","typeString":"contract AggregatedStakedPSYSV3"}},"id":952,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1244:11:4","memberName":"totalSupply","nodeType":"MemberAccess","referencedDeclaration":709,"src":"1232:23:4","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":953,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1232:25:4","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1203:54:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":955,"nodeType":"ExpressionStatement","src":"1203:54:4"},{"expression":{"id":962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":956,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":946,"src":"1263:4:4","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData memory"}},"id":958,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"1268:20:4","memberName":"stakeCooldownSeconds","nodeType":"MemberAccess","referencedDeclaration":839,"src":"1263:25:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":959,"name":"STAKED_PSYS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":896,"src":"1291:11:4","typeDescriptions":{"typeIdentifier":"t_contract$_AggregatedStakedPSYSV3_$737","typeString":"contract AggregatedStakedPSYSV3"}},"id":960,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1303:18:4","memberName":"getCooldownSeconds","nodeType":"MemberAccess","referencedDeclaration":463,"src":"1291:30:4","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1291:32:4","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1263:60:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":963,"nodeType":"ExpressionStatement","src":"1263:60:4"},{"expression":{"id":970,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":964,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":946,"src":"1329:4:4","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData memory"}},"id":966,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"1334:18:4","memberName":"stakeUnstakeWindow","nodeType":"MemberAccess","referencedDeclaration":841,"src":"1329:23:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":967,"name":"STAKED_PSYS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":896,"src":"1355:11:4","typeDescriptions":{"typeIdentifier":"t_contract$_AggregatedStakedPSYSV3_$737","typeString":"contract AggregatedStakedPSYSV3"}},"id":968,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1367:14:4","memberName":"UNSTAKE_WINDOW","nodeType":"MemberAccess","referencedDeclaration":249,"src":"1355:26:4","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":969,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1355:28:4","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1329:54:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":971,"nodeType":"ExpressionStatement","src":"1329:54:4"},{"expression":{"id":979,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":972,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":946,"src":"1389:4:4","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData memory"}},"id":974,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"1394:19:4","memberName":"rewardTokenPriceEth","nodeType":"MemberAccess","referencedDeclaration":843,"src":"1389:24:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":977,"name":"PSYS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":893,"src":"1443:4:4","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":975,"name":"PRICE_ORACLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":891,"src":"1416:12:4","typeDescriptions":{"typeIdentifier":"t_contract$_IPriceOracle_$825","typeString":"contract IPriceOracle"}},"id":976,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1429:13:4","memberName":"getAssetPrice","nodeType":"MemberAccess","referencedDeclaration":824,"src":"1416:26:4","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":978,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1416:32:4","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1389:59:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":980,"nodeType":"ExpressionStatement","src":"1389:59:4"},{"expression":{"id":986,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":981,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":946,"src":"1454:4:4","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData memory"}},"id":983,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"1459:18:4","memberName":"stakeTokenPriceEth","nodeType":"MemberAccess","referencedDeclaration":845,"src":"1454:23:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":984,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":946,"src":"1480:4:4","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData memory"}},"id":985,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1485:19:4","memberName":"rewardTokenPriceEth","nodeType":"MemberAccess","referencedDeclaration":843,"src":"1480:24:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1454:50:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":987,"nodeType":"ExpressionStatement","src":"1454:50:4"},{"expression":{"id":994,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":988,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":946,"src":"1510:4:4","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData memory"}},"id":990,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"1515:12:4","memberName":"exchangeRate","nodeType":"MemberAccess","referencedDeclaration":849,"src":"1510:17:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":991,"name":"STAKED_PSYS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":896,"src":"1530:11:4","typeDescriptions":{"typeIdentifier":"t_contract$_AggregatedStakedPSYSV3_$737","typeString":"contract AggregatedStakedPSYSV3"}},"id":992,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1542:15:4","memberName":"getExchangeRate","nodeType":"MemberAccess","referencedDeclaration":477,"src":"1530:27:4","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint216_$","typeString":"function () view external returns (uint216)"}},"id":993,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1530:29:4","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint216","typeString":"uint216"}},"src":"1510:49:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":995,"nodeType":"ExpressionStatement","src":"1510:49:4"},{"expression":{"id":1002,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":996,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":946,"src":"1565:4:4","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData memory"}},"id":998,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"1570:12:4","memberName":"maxSlashable","nodeType":"MemberAccess","referencedDeclaration":861,"src":"1565:17:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":999,"name":"STAKED_PSYS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":896,"src":"1585:11:4","typeDescriptions":{"typeIdentifier":"t_contract$_AggregatedStakedPSYSV3_$737","typeString":"contract AggregatedStakedPSYSV3"}},"id":1000,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1597:25:4","memberName":"getMaxSlashablePercentage","nodeType":"MemberAccess","referencedDeclaration":495,"src":"1585:37:4","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":1001,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1585:39:4","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1565:59:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":1003,"nodeType":"ExpressionStatement","src":"1565:59:4"},{"assignments":[1005,1007],"declarations":[{"constant":false,"id":1005,"mutability":"mutable","name":"rewardsPerSecond","nameLocation":"1681:16:4","nodeType":"VariableDeclaration","scope":1092,"src":"1673:24:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1004,"name":"uint256","nodeType":"ElementaryTypeName","src":"1673:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":1007,"mutability":"mutable","name":"distributionEnd","nameLocation":"1707:15:4","nodeType":"VariableDeclaration","scope":1092,"src":"1699:23:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1006,"name":"uint256","nodeType":"ElementaryTypeName","src":"1699:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":1010,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":1008,"name":"_getRewardsData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1172,"src":"1726:15:4","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$_t_uint256_$","typeString":"function () view returns (uint256,uint256)"}},"id":1009,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1726:17:4","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"1672:71:4"},{"expression":{"id":1015,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":1011,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":946,"src":"1749:4:4","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData memory"}},"id":1013,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"1754:16:4","memberName":"rewardsPerSecond","nodeType":"MemberAccess","referencedDeclaration":847,"src":"1749:21:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1014,"name":"rewardsPerSecond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1005,"src":"1773:16:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1749:40:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":1016,"nodeType":"ExpressionStatement","src":"1749:40:4"},{"expression":{"id":1021,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":1017,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":946,"src":"1795:4:4","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData memory"}},"id":1019,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"1800:15:4","memberName":"distributionEnd","nodeType":"MemberAccess","referencedDeclaration":851,"src":"1795:20:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1020,"name":"distributionEnd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1007,"src":"1818:15:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1795:38:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":1022,"nodeType":"ExpressionStatement","src":"1795:38:4"},{"expression":{"id":1033,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":1023,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":946,"src":"1891:4:4","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData memory"}},"id":1025,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"1896:8:4","memberName":"stakeApy","nodeType":"MemberAccess","referencedDeclaration":853,"src":"1891:13:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":1027,"name":"rewardsPerSecond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1005,"src":"1928:16:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":1028,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":946,"src":"1952:4:4","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData memory"}},"id":1029,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1957:21:4","memberName":"stakeTokenTotalSupply","nodeType":"MemberAccess","referencedDeclaration":837,"src":"1952:26:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":1030,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":946,"src":"1986:4:4","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData memory"}},"id":1031,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1991:12:4","memberName":"exchangeRate","nodeType":"MemberAccess","referencedDeclaration":849,"src":"1986:17:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1026,"name":"_calculateApy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1129,"src":"1907:13:4","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256,uint256) pure returns (uint256)"}},"id":1032,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1907:102:4","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1891:118:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":1034,"nodeType":"ExpressionStatement","src":"1891:118:4"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1040,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1035,"name":"user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":938,"src":"2046:4:4","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":1038,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2062:1:4","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":1037,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2054:7:4","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1036,"name":"address","nodeType":"ElementaryTypeName","src":"2054:7:4","typeDescriptions":{}}},"id":1039,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2054:10:4","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2046:18:4","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1089,"nodeType":"IfStatement","src":"2042:409:4","trueBody":{"id":1088,"nodeType":"Block","src":"2066:385:4","statements":[{"expression":{"id":1048,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":1041,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":946,"src":"2074:4:4","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData memory"}},"id":1043,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2079:21:4","memberName":"userStakeTokenBalance","nodeType":"MemberAccess","referencedDeclaration":855,"src":"2074:26:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":1046,"name":"user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":938,"src":"2125:4:4","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":1044,"name":"STAKED_PSYS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":896,"src":"2103:11:4","typeDescriptions":{"typeIdentifier":"t_contract$_AggregatedStakedPSYSV3_$737","typeString":"contract AggregatedStakedPSYSV3"}},"id":1045,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2115:9:4","memberName":"balanceOf","nodeType":"MemberAccess","referencedDeclaration":315,"src":"2103:21:4","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":1047,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2103:27:4","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2074:56:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":1049,"nodeType":"ExpressionStatement","src":"2074:56:4"},{"expression":{"id":1059,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":1050,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":946,"src":"2138:4:4","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData memory"}},"id":1052,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2143:26:4","memberName":"userUnderlyingTokenBalance","nodeType":"MemberAccess","referencedDeclaration":857,"src":"2138:31:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":1057,"name":"user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":938,"src":"2195:4:4","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[{"id":1054,"name":"PSYS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":893,"src":"2179:4:4","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":1053,"name":"IERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":815,"src":"2172:6:4","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IERC20_$815_$","typeString":"type(contract IERC20)"}},"id":1055,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2172:12:4","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$815","typeString":"contract IERC20"}},"id":1056,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2185:9:4","memberName":"balanceOf","nodeType":"MemberAccess","referencedDeclaration":772,"src":"2172:22:4","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":1058,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2172:28:4","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2138:62:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":1060,"nodeType":"ExpressionStatement","src":"2138:62:4"},{"expression":{"id":1068,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":1061,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":946,"src":"2208:4:4","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData memory"}},"id":1063,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2213:18:4","memberName":"userRewardsToClaim","nodeType":"MemberAccess","referencedDeclaration":859,"src":"2208:23:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":1066,"name":"user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":938,"src":"2269:4:4","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":1064,"name":"STAKED_PSYS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":896,"src":"2234:11:4","typeDescriptions":{"typeIdentifier":"t_contract$_AggregatedStakedPSYSV3_$737","typeString":"contract AggregatedStakedPSYSV3"}},"id":1065,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2246:22:4","memberName":"getTotalRewardsBalance","nodeType":"MemberAccess","referencedDeclaration":529,"src":"2234:34:4","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":1067,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2234:40:4","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2208:66:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":1069,"nodeType":"ExpressionStatement","src":"2208:66:4"},{"assignments":[1071,1073],"declarations":[{"constant":false,"id":1071,"mutability":"mutable","name":"cooldownTimestamp","nameLocation":"2290:17:4","nodeType":"VariableDeclaration","scope":1088,"src":"2283:24:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint40","typeString":"uint40"},"typeName":{"id":1070,"name":"uint40","nodeType":"ElementaryTypeName","src":"2283:6:4","typeDescriptions":{"typeIdentifier":"t_uint40","typeString":"uint40"}},"visibility":"internal"},{"constant":false,"id":1073,"mutability":"mutable","name":"cooldownAmount","nameLocation":"2317:14:4","nodeType":"VariableDeclaration","scope":1088,"src":"2309:22:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint216","typeString":"uint216"},"typeName":{"id":1072,"name":"uint216","nodeType":"ElementaryTypeName","src":"2309:7:4","typeDescriptions":{"typeIdentifier":"t_uint216","typeString":"uint216"}},"visibility":"internal"}],"id":1078,"initialValue":{"arguments":[{"id":1076,"name":"user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":938,"src":"2364:4:4","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":1074,"name":"STAKED_PSYS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":896,"src":"2335:11:4","typeDescriptions":{"typeIdentifier":"t_contract$_AggregatedStakedPSYSV3_$737","typeString":"contract AggregatedStakedPSYSV3"}},"id":1075,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2347:16:4","memberName":"stakersCooldowns","nodeType":"MemberAccess","referencedDeclaration":699,"src":"2335:28:4","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint40_$_t_uint216_$","typeString":"function (address) view external returns (uint40,uint216)"}},"id":1077,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2335:34:4","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint40_$_t_uint216_$","typeString":"tuple(uint40,uint216)"}},"nodeType":"VariableDeclarationStatement","src":"2282:87:4"},{"expression":{"id":1086,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":1079,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":946,"src":"2377:4:4","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData memory"}},"id":1081,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2382:12:4","memberName":"userCooldown","nodeType":"MemberAccess","referencedDeclaration":864,"src":"2377:17:4","typeDescriptions":{"typeIdentifier":"t_struct$_CooldownData_$834_memory_ptr","typeString":"struct IStakeUIHelper.CooldownData memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":1083,"name":"cooldownTimestamp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1071,"src":"2410:17:4","typeDescriptions":{"typeIdentifier":"t_uint40","typeString":"uint40"}},{"id":1084,"name":"cooldownAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1073,"src":"2429:14:4","typeDescriptions":{"typeIdentifier":"t_uint216","typeString":"uint216"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint40","typeString":"uint40"},{"typeIdentifier":"t_uint216","typeString":"uint216"}],"id":1082,"name":"CooldownData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":834,"src":"2397:12:4","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CooldownData_$834_storage_ptr_$","typeString":"type(struct IStakeUIHelper.CooldownData storage pointer)"}},"id":1085,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2397:47:4","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CooldownData_$834_memory_ptr","typeString":"struct IStakeUIHelper.CooldownData memory"}},"src":"2377:67:4","typeDescriptions":{"typeIdentifier":"t_struct$_CooldownData_$834_memory_ptr","typeString":"struct IStakeUIHelper.CooldownData memory"}},"id":1087,"nodeType":"ExpressionStatement","src":"2377:67:4"}]}},{"expression":{"id":1090,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":946,"src":"2464:4:4","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData memory"}},"functionReturnParameters":943,"id":1091,"nodeType":"Return","src":"2457:11:4"}]},"documentation":{"id":936,"nodeType":"StructuredDocumentation","src":"956:101:4","text":" @dev Fetches all relevant staking data for a user\n @param user Address of the user"},"functionSelector":"e9ce34a5","id":1093,"implemented":true,"kind":"function","modifiers":[],"name":"getUserStakeData","nameLocation":"1069:16:4","nodeType":"FunctionDefinition","parameters":{"id":939,"nodeType":"ParameterList","parameters":[{"constant":false,"id":938,"mutability":"mutable","name":"user","nameLocation":"1094:4:4","nodeType":"VariableDeclaration","scope":1093,"src":"1086:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":937,"name":"address","nodeType":"ElementaryTypeName","src":"1086:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1085:14:4"},"returnParameters":{"id":943,"nodeType":"ParameterList","parameters":[{"constant":false,"id":942,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1093,"src":"1123:16:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_memory_ptr","typeString":"struct IStakeUIHelper.StakeData"},"typeName":{"id":941,"nodeType":"UserDefinedTypeName","pathNode":{"id":940,"name":"StakeData","nameLocations":["1123:9:4"],"nodeType":"IdentifierPath","referencedDeclaration":865,"src":"1123:9:4"},"referencedDeclaration":865,"src":"1123:9:4","typeDescriptions":{"typeIdentifier":"t_struct$_StakeData_$865_storage_ptr","typeString":"struct IStakeUIHelper.StakeData"}},"visibility":"internal"}],"src":"1122:18:4"},"scope":1173,"src":"1060:1413:4","stateMutability":"view","virtual":false,"visibility":"external"},{"body":{"id":1128,"nodeType":"Block","src":"2692:255:4","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1107,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1105,"name":"totalSupply","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1098,"src":"2702:11:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":1106,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2717:1:4","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"2702:16:4","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1110,"nodeType":"IfStatement","src":"2698:30:4","trueBody":{"expression":{"hexValue":"30","id":1108,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2727:1:4","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"functionReturnParameters":1104,"id":1109,"nodeType":"Return","src":"2720:8:4"}},{"assignments":[1112],"declarations":[{"constant":false,"id":1112,"mutability":"mutable","name":"adjustedRewardsPerYear","nameLocation":"2779:22:4","nodeType":"VariableDeclaration","scope":1128,"src":"2771:30:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1111,"name":"uint256","nodeType":"ElementaryTypeName","src":"2771:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":1120,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1117,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1115,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1113,"name":"rewardsPerSecond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1096,"src":"2804:16:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":1114,"name":"SECONDS_PER_YEAR","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":905,"src":"2823:16:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2804:35:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":1116,"name":"exchangeRate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1100,"src":"2842:12:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2804:50:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":1118,"name":"EXCHANGE_RATE_UNIT","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":911,"src":"2857:18:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2804:71:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"2771:104:4"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1126,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1123,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1121,"name":"adjustedRewardsPerYear","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1112,"src":"2889:22:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":1122,"name":"APY_PRECISION","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":908,"src":"2914:13:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2889:38:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":1124,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"2888:40:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":1125,"name":"totalSupply","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1098,"src":"2931:11:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2888:54:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":1104,"id":1127,"nodeType":"Return","src":"2881:61:4"}]},"documentation":{"id":1094,"nodeType":"StructuredDocumentation","src":"2477:72:4","text":" @dev Calculates the APY considering exchange rate changes"},"id":1129,"implemented":true,"kind":"function","modifiers":[],"name":"_calculateApy","nameLocation":"2561:13:4","nodeType":"FunctionDefinition","parameters":{"id":1101,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1096,"mutability":"mutable","name":"rewardsPerSecond","nameLocation":"2588:16:4","nodeType":"VariableDeclaration","scope":1129,"src":"2580:24:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1095,"name":"uint256","nodeType":"ElementaryTypeName","src":"2580:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":1098,"mutability":"mutable","name":"totalSupply","nameLocation":"2618:11:4","nodeType":"VariableDeclaration","scope":1129,"src":"2610:19:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1097,"name":"uint256","nodeType":"ElementaryTypeName","src":"2610:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":1100,"mutability":"mutable","name":"exchangeRate","nameLocation":"2643:12:4","nodeType":"VariableDeclaration","scope":1129,"src":"2635:20:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1099,"name":"uint256","nodeType":"ElementaryTypeName","src":"2635:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2574:85:4"},"returnParameters":{"id":1104,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1103,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1129,"src":"2683:7:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1102,"name":"uint256","nodeType":"ElementaryTypeName","src":"2683:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2682:9:4"},"scope":1173,"src":"2552:395:4","stateMutability":"pure","virtual":false,"visibility":"internal"},{"body":{"id":1171,"nodeType":"Block","src":"3080:334:4","statements":[{"assignments":[1138],"declarations":[{"constant":false,"id":1138,"mutability":"mutable","name":"stakingAddress","nameLocation":"3094:14:4","nodeType":"VariableDeclaration","scope":1171,"src":"3086:22:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1137,"name":"address","nodeType":"ElementaryTypeName","src":"3086:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":1143,"initialValue":{"arguments":[{"id":1141,"name":"STAKED_PSYS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":896,"src":"3119:11:4","typeDescriptions":{"typeIdentifier":"t_contract$_AggregatedStakedPSYSV3_$737","typeString":"contract AggregatedStakedPSYSV3"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_AggregatedStakedPSYSV3_$737","typeString":"contract AggregatedStakedPSYSV3"}],"id":1140,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3111:7:4","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1139,"name":"address","nodeType":"ElementaryTypeName","src":"3111:7:4","typeDescriptions":{}}},"id":1142,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3111:20:4","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"3086:45:4"},{"assignments":[1145],"declarations":[{"constant":false,"id":1145,"mutability":"mutable","name":"distributionEnd","nameLocation":"3145:15:4","nodeType":"VariableDeclaration","scope":1171,"src":"3137:23:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1144,"name":"uint256","nodeType":"ElementaryTypeName","src":"3137:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":1149,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":1146,"name":"STAKED_PSYS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":896,"src":"3163:11:4","typeDescriptions":{"typeIdentifier":"t_contract$_AggregatedStakedPSYSV3_$737","typeString":"contract AggregatedStakedPSYSV3"}},"id":1147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3175:16:4","memberName":"DISTRIBUTION_END","nodeType":"MemberAccess","referencedDeclaration":179,"src":"3163:28:4","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":1148,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3163:30:4","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"3137:56:4"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1153,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":1150,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"3208:5:4","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":1151,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3214:9:4","memberName":"timestamp","nodeType":"MemberAccess","src":"3208:15:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":1152,"name":"distributionEnd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1145,"src":"3227:15:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3208:34:4","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1159,"nodeType":"IfStatement","src":"3204:82:4","trueBody":{"id":1158,"nodeType":"Block","src":"3244:42:4","statements":[{"expression":{"components":[{"hexValue":"30","id":1154,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3260:1:4","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":1155,"name":"distributionEnd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1145,"src":"3263:15:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":1156,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"3259:20:4","typeDescriptions":{"typeIdentifier":"t_tuple$_t_rational_0_by_1_$_t_uint256_$","typeString":"tuple(int_const 0,uint256)"}},"functionReturnParameters":1136,"id":1157,"nodeType":"Return","src":"3252:27:4"}]}},{"assignments":[1161,null,null],"declarations":[{"constant":false,"id":1161,"mutability":"mutable","name":"emissionPerSecond","nameLocation":"3301:17:4","nodeType":"VariableDeclaration","scope":1171,"src":"3293:25:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1160,"name":"uint256","nodeType":"ElementaryTypeName","src":"3293:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},null,null],"id":1166,"initialValue":{"arguments":[{"id":1164,"name":"stakingAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1138,"src":"3345:14:4","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":1162,"name":"STAKED_PSYS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":896,"src":"3326:11:4","typeDescriptions":{"typeIdentifier":"t_contract$_AggregatedStakedPSYSV3_$737","typeString":"contract AggregatedStakedPSYSV3"}},"id":1163,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3338:6:4","memberName":"assets","nodeType":"MemberAccess","referencedDeclaration":308,"src":"3326:18:4","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint128_$_t_uint128_$_t_uint256_$","typeString":"function (address) view external returns (uint128,uint128,uint256)"}},"id":1165,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3326:34:4","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint128_$_t_uint128_$_t_uint256_$","typeString":"tuple(uint128,uint128,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"3292:68:4"},{"expression":{"components":[{"id":1167,"name":"emissionPerSecond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1161,"src":"3374:17:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":1168,"name":"distributionEnd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1145,"src":"3393:15:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":1169,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"3373:36:4","typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"functionReturnParameters":1136,"id":1170,"nodeType":"Return","src":"3366:43:4"}]},"documentation":{"id":1130,"nodeType":"StructuredDocumentation","src":"2951:58:4","text":" @dev Gets current rewards distribution data"},"id":1172,"implemented":true,"kind":"function","modifiers":[],"name":"_getRewardsData","nameLocation":"3021:15:4","nodeType":"FunctionDefinition","parameters":{"id":1131,"nodeType":"ParameterList","parameters":[],"src":"3036:2:4"},"returnParameters":{"id":1136,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1133,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1172,"src":"3062:7:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1132,"name":"uint256","nodeType":"ElementaryTypeName","src":"3062:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":1135,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1172,"src":"3071:7:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1134,"name":"uint256","nodeType":"ElementaryTypeName","src":"3071:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3061:18:4"},"scope":1173,"src":"3012:402:4","stateMutability":"view","virtual":false,"visibility":"internal"}],"scope":1174,"src":"443:2973:4","usedErrors":[],"usedEvents":[]}],"src":"32:3384:4"},"id":4}},"contracts":{"contracts/interfaces/AggregatedStakedPSYSV3.sol":{"AggregatedStakedPSYSV3":{"abi":[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":false,"internalType":"uint256","name":"emission","type":"uint256"}],"name":"AssetConfigUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":false,"internalType":"uint256","name":"index","type":"uint256"}],"name":"AssetIndexUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Cooldown","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"cooldownSeconds","type":"uint256"}],"name":"CooldownSecondsChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"delegator","type":"address"},{"indexed":true,"internalType":"address","name":"delegatee","type":"address"},{"indexed":false,"internalType":"uint8","name":"delegationType","type":"uint8"}],"name":"DelegateChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint8","name":"delegationType","type":"uint8"}],"name":"DelegatedPowerChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint216","name":"exchangeRate","type":"uint216"}],"name":"ExchangeRateChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FundsReturned","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newDebtToken","type":"address"}],"name":"GHODebtTokenChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newPercentage","type":"uint256"}],"name":"MaxSlashablePercentageChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newPendingAdmin","type":"address"},{"indexed":false,"internalType":"uint256","name":"role","type":"uint256"}],"name":"PendingAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"assets","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"}],"name":"Redeem","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"RewardsAccrued","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"RewardsClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newAdmin","type":"address"},{"indexed":false,"internalType":"uint256","name":"role","type":"uint256"}],"name":"RoleClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"destination","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Slashed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"windowSeconds","type":"uint256"}],"name":"SlashingExitWindowDurationChanged","type":"event"},{"anonymous":false,"inputs":[],"name":"SlashingSettled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"assets","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"}],"name":"Staked","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":false,"internalType":"uint256","name":"index","type":"uint256"}],"name":"UserIndexUpdated","type":"event"},{"inputs":[],"name":"CLAIM_HELPER_ROLE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"COOLDOWN_ADMIN_ROLE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"COOLDOWN_SECONDS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DELEGATE_BY_TYPE_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DELEGATE_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DISTRIBUTION_END","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"EIP712_REVISION","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"EMISSION_MANAGER","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"EXCHANGE_RATE_UNIT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"INITIAL_EXCHANGE_RATE","outputs":[{"internalType":"uint216","name":"","type":"uint216"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"LOWER_BOUND","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PERMIT_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PRECISION","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"REVISION","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"REWARDS_VAULT","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"REWARD_TOKEN","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SLASH_ADMIN_ROLE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"STAKED_TOKEN","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"UNSTAKE_WINDOW","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_aaveGovernance","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"_votingSnapshots","outputs":[{"internalType":"uint128","name":"blockNumber","type":"uint128"},{"internalType":"uint128","name":"value","type":"uint128"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_votingSnapshotsCounts","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"assets","outputs":[{"internalType":"uint128","name":"emissionPerSecond","type":"uint128"},{"internalType":"uint128","name":"lastUpdateTimestamp","type":"uint128"},{"internalType":"uint256","name":"index","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"claimRewards","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"claimAmount","type":"uint256"},{"internalType":"uint256","name":"redeemAmount","type":"uint256"}],"name":"claimRewardsAndRedeem","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"claimAmount","type":"uint256"},{"internalType":"uint256","name":"redeemAmount","type":"uint256"}],"name":"claimRewardsAndRedeemOnBehalf","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"claimRewardsAndStake","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"claimRewardsAndStakeOnBehalf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"claimRewardsOnBehalf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"role","type":"uint256"}],"name":"claimRoleAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"uint128","name":"emissionPerSecond","type":"uint128"},{"internalType":"uint256","name":"totalStaked","type":"uint256"},{"internalType":"address","name":"underlyingAsset","type":"address"}],"internalType":"struct AggregatedStakedPSYSV3.AssetConfigInput[]","name":"assetsConfigInput","type":"tuple[]"}],"name":"configureAssets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"cooldown","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"}],"name":"cooldownOnBehalfOf","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"}],"name":"delegate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"expiry","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"delegateBySig","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"},{"internalType":"uint8","name":"delegationType","type":"uint8"}],"name":"delegateByType","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"},{"internalType":"uint8","name":"delegationType","type":"uint8"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"expiry","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"delegateByTypeBySig","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"role","type":"uint256"}],"name":"getAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCooldownSeconds","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"},{"internalType":"uint8","name":"delegationType","type":"uint8"}],"name":"getDelegateeByType","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getExchangeRate","outputs":[{"internalType":"uint216","name":"","type":"uint216"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint32","name":"index","type":"uint32"}],"name":"getExchangeRateSnapshot","outputs":[{"components":[{"internalType":"uint40","name":"blockNumber","type":"uint40"},{"internalType":"uint216","name":"value","type":"uint216"}],"internalType":"struct AggregatedStakedPSYSV3.ExchangeRateSnapshot","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getExchangeRateSnapshotsCount","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getMaxSlashablePercentage","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"role","type":"uint256"}],"name":"getPendingAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"uint8","name":"delegationType","type":"uint8"}],"name":"getPowerAtBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint8","name":"delegationType","type":"uint8"}],"name":"getPowerCurrent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"staker","type":"address"}],"name":"getTotalRewardsBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"asset","type":"address"}],"name":"getUserAssetData","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ghoDebtToken","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"inPostSlashingPeriod","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"slashingAdmin","type":"address"},{"internalType":"address","name":"cooldownPauseAdmin","type":"address"},{"internalType":"address","name":"claimHelper","type":"address"},{"internalType":"uint256","name":"maxSlashablePercentage","type":"uint256"},{"internalType":"uint256","name":"cooldownSeconds","type":"uint256"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"permit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"shares","type":"uint256"}],"name":"previewRedeem","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"assets","type":"uint256"}],"name":"previewStake","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"redeem","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"redeemOnBehalf","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"returnFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"cooldownSeconds","type":"uint256"}],"name":"setCooldownSeconds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newGHODebtToken","type":"address"}],"name":"setGHODebtToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"percentage","type":"uint256"}],"name":"setMaxSlashablePercentage","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"role","type":"uint256"},{"internalType":"address","name":"newPendingAdmin","type":"address"}],"name":"setPendingAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"settleSlashing","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"destination","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"slash","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"stake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"stakeWithPermit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"stakerRewardsToClaim","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"stakersCooldowns","outputs":[{"internalType":"uint40","name":"timestamp","type":"uint40"},{"internalType":"uint216","name":"amount","type":"uint216"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"totalSupplyAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}],"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"methodIdentifiers":{"CLAIM_HELPER_ROLE()":"dbc0ed8a","COOLDOWN_ADMIN_ROLE()":"9e3ffce0","COOLDOWN_SECONDS()":"72b49d63","DELEGATE_BY_TYPE_TYPEHASH()":"aa9fbe02","DELEGATE_TYPEHASH()":"41cbf54a","DISTRIBUTION_END()":"919cd40f","DOMAIN_SEPARATOR()":"3644e515","EIP712_REVISION()":"78160376","EMISSION_MANAGER()":"cbcbb507","EXCHANGE_RATE_UNIT()":"8e9b2ca4","INITIAL_EXCHANGE_RATE()":"58146d17","LOWER_BOUND()":"6198e135","PERMIT_TYPEHASH()":"30adf81f","PRECISION()":"aaf5eb68","REVISION()":"dde43cba","REWARDS_VAULT()":"946776cd","REWARD_TOKEN()":"99248ea7","SLASH_ADMIN_ROLE()":"8c9a281d","STAKED_TOKEN()":"312f6b83","UNSTAKE_WINDOW()":"359c4a96","_aaveGovernance()":"c3863ada","_nonces(address)":"b9844d8d","_votingSnapshots(address,uint256)":"5b3cc0cf","_votingSnapshotsCounts(address)":"7bb73c97","allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","assets(address)":"f11b8188","balanceOf(address)":"70a08231","claimRewards(address,uint256)":"9a99b4f0","claimRewardsAndRedeem(address,uint256,uint256)":"eab52318","claimRewardsAndRedeemOnBehalf(address,address,uint256,uint256)":"9c9b5154","claimRewardsAndStake(address,uint256)":"955e18af","claimRewardsAndStakeOnBehalf(address,address,uint256)":"c18f539a","claimRewardsOnBehalf(address,address,uint256)":"20fb80b5","claimRoleAdmin(uint256)":"fde9eb69","configureAssets((uint128,uint256,address)[])":"b2a5dbfa","cooldown()":"787a08a6","cooldownOnBehalfOf(address)":"250201db","decimals()":"313ce567","decreaseAllowance(address,uint256)":"a457c2d7","delegate(address)":"5c19a95c","delegateBySig(address,uint256,uint256,uint8,bytes32,bytes32)":"c3cda520","delegateByType(address,uint8)":"dc937e1c","delegateByTypeBySig(address,uint8,uint256,uint256,uint8,bytes32,bytes32)":"f713d8a8","getAdmin(uint256)":"111fd88b","getCooldownSeconds()":"616e0bf9","getDelegateeByType(address,uint8)":"6f50458d","getExchangeRate()":"e6aa216c","getExchangeRateSnapshot(uint32)":"8ef98e0e","getExchangeRateSnapshotsCount()":"60ba192b","getMaxSlashablePercentage()":"f34d96da","getPendingAdmin(uint256)":"4575e69b","getPowerAtBlock(address,uint256,uint8)":"c2ffbb91","getPowerCurrent(address,uint8)":"b2f4201d","getTotalRewardsBalance(address)":"8dbefee2","getUserAssetData(address,address)":"3373ee4c","ghoDebtToken()":"174ed542","inPostSlashingPeriod()":"f036bc68","increaseAllowance(address,uint256)":"39509351","initialize(address,address,address,uint256,uint256)":"a6b63eb8","name()":"06fdde03","permit(address,address,uint256,uint256,uint8,bytes32,bytes32)":"d505accf","previewRedeem(uint256)":"4cdad506","previewStake(uint256)":"727a5d57","redeem(address,uint256)":"1e9a6950","redeemOnBehalf(address,address,uint256)":"112d037c","returnFunds(uint256)":"45755dd6","setCooldownSeconds(uint256)":"7b5b1157","setGHODebtToken(address)":"4998fffd","setMaxSlashablePercentage(uint256)":"74011f56","setPendingAdmin(uint256,address)":"ab406fe6","settleSlashing()":"aff05aa9","slash(address,uint256)":"02fb4d85","stake(address,uint256)":"adc9772e","stakeWithPermit(address,uint256,uint256,uint8,bytes32,bytes32)":"73d6a889","stakerRewardsToClaim(address)":"7e90d7ef","stakersCooldowns(address)":"091030c3","symbol()":"95d89b41","totalSupply()":"18160ddd","totalSupplyAt(uint256)":"981b24d0","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"}},"metadata":"{\"compiler\":{\"version\":\"0.8.27+commit.40a35a09\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"asset\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"emission\",\"type\":\"uint256\"}],\"name\":\"AssetConfigUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"asset\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"AssetIndexUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Cooldown\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"cooldownSeconds\",\"type\":\"uint256\"}],\"name\":\"CooldownSecondsChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"delegationType\",\"type\":\"uint8\"}],\"name\":\"DelegateChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"delegationType\",\"type\":\"uint8\"}],\"name\":\"DelegatedPowerChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint216\",\"name\":\"exchangeRate\",\"type\":\"uint216\"}],\"name\":\"ExchangeRateChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"FundsReturned\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newDebtToken\",\"type\":\"address\"}],\"name\":\"GHODebtTokenChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPercentage\",\"type\":\"uint256\"}],\"name\":\"MaxSlashablePercentageChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newPendingAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"role\",\"type\":\"uint256\"}],\"name\":\"PendingAdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"assets\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"shares\",\"type\":\"uint256\"}],\"name\":\"Redeem\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"RewardsAccrued\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"RewardsClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"role\",\"type\":\"uint256\"}],\"name\":\"RoleClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"destination\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Slashed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"windowSeconds\",\"type\":\"uint256\"}],\"name\":\"SlashingExitWindowDurationChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"SlashingSettled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"assets\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"shares\",\"type\":\"uint256\"}],\"name\":\"Staked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"asset\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"UserIndexUpdated\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"CLAIM_HELPER_ROLE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"COOLDOWN_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"COOLDOWN_SECONDS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DELEGATE_BY_TYPE_TYPEHASH\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DELEGATE_TYPEHASH\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DISTRIBUTION_END\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DOMAIN_SEPARATOR\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"EIP712_REVISION\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"EMISSION_MANAGER\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"EXCHANGE_RATE_UNIT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"INITIAL_EXCHANGE_RATE\",\"outputs\":[{\"internalType\":\"uint216\",\"name\":\"\",\"type\":\"uint216\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"LOWER_BOUND\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PERMIT_TYPEHASH\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PRECISION\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"REVISION\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"REWARDS_VAULT\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"REWARD_TOKEN\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SLASH_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"STAKED_TOKEN\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UNSTAKE_WINDOW\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_aaveGovernance\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"_nonces\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"_votingSnapshots\",\"outputs\":[{\"internalType\":\"uint128\",\"name\":\"blockNumber\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"value\",\"type\":\"uint128\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"_votingSnapshotsCounts\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"assets\",\"outputs\":[{\"internalType\":\"uint128\",\"name\":\"emissionPerSecond\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"lastUpdateTimestamp\",\"type\":\"uint128\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"claimRewards\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"claimAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"redeemAmount\",\"type\":\"uint256\"}],\"name\":\"claimRewardsAndRedeem\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"claimAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"redeemAmount\",\"type\":\"uint256\"}],\"name\":\"claimRewardsAndRedeemOnBehalf\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"claimRewardsAndStake\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"claimRewardsAndStakeOnBehalf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"claimRewardsOnBehalf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"role\",\"type\":\"uint256\"}],\"name\":\"claimRoleAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint128\",\"name\":\"emissionPerSecond\",\"type\":\"uint128\"},{\"internalType\":\"uint256\",\"name\":\"totalStaked\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"underlyingAsset\",\"type\":\"address\"}],\"internalType\":\"struct AggregatedStakedPSYSV3.AssetConfigInput[]\",\"name\":\"assetsConfigInput\",\"type\":\"tuple[]\"}],\"name\":\"configureAssets\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cooldown\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"cooldownOnBehalfOf\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"subtractedValue\",\"type\":\"uint256\"}],\"name\":\"decreaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"}],\"name\":\"delegate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"expiry\",\"type\":\"uint256\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"delegateBySig\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"delegationType\",\"type\":\"uint8\"}],\"name\":\"delegateByType\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"delegationType\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"expiry\",\"type\":\"uint256\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"delegateByTypeBySig\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"role\",\"type\":\"uint256\"}],\"name\":\"getAdmin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getCooldownSeconds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"delegationType\",\"type\":\"uint8\"}],\"name\":\"getDelegateeByType\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getExchangeRate\",\"outputs\":[{\"internalType\":\"uint216\",\"name\":\"\",\"type\":\"uint216\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"name\":\"getExchangeRateSnapshot\",\"outputs\":[{\"components\":[{\"internalType\":\"uint40\",\"name\":\"blockNumber\",\"type\":\"uint40\"},{\"internalType\":\"uint216\",\"name\":\"value\",\"type\":\"uint216\"}],\"internalType\":\"struct AggregatedStakedPSYSV3.ExchangeRateSnapshot\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getExchangeRateSnapshotsCount\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMaxSlashablePercentage\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"role\",\"type\":\"uint256\"}],\"name\":\"getPendingAdmin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint8\",\"name\":\"delegationType\",\"type\":\"uint8\"}],\"name\":\"getPowerAtBlock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"delegationType\",\"type\":\"uint8\"}],\"name\":\"getPowerCurrent\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"staker\",\"type\":\"address\"}],\"name\":\"getTotalRewardsBalance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"asset\",\"type\":\"address\"}],\"name\":\"getUserAssetData\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"ghoDebtToken\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"inPostSlashingPeriod\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"addedValue\",\"type\":\"uint256\"}],\"name\":\"increaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"slashingAdmin\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"cooldownPauseAdmin\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"claimHelper\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"maxSlashablePercentage\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"cooldownSeconds\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"permit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"shares\",\"type\":\"uint256\"}],\"name\":\"previewRedeem\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"assets\",\"type\":\"uint256\"}],\"name\":\"previewStake\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"redeem\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"redeemOnBehalf\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"returnFunds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"cooldownSeconds\",\"type\":\"uint256\"}],\"name\":\"setCooldownSeconds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newGHODebtToken\",\"type\":\"address\"}],\"name\":\"setGHODebtToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"percentage\",\"type\":\"uint256\"}],\"name\":\"setMaxSlashablePercentage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"role\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"newPendingAdmin\",\"type\":\"address\"}],\"name\":\"setPendingAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"settleSlashing\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"destination\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"slash\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"stake\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"stakeWithPermit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"stakerRewardsToClaim\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"stakersCooldowns\",\"outputs\":[{\"internalType\":\"uint40\",\"name\":\"timestamp\",\"type\":\"uint40\"},{\"internalType\":\"uint216\",\"name\":\"amount\",\"type\":\"uint216\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"totalSupplyAt\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/interfaces/AggregatedStakedPSYSV3.sol\":\"AggregatedStakedPSYSV3\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/interfaces/AggregatedStakedPSYSV3.sol\":{\"keccak256\":\"0xdb1f5f3726e9f9629b6af27968e2559f39e4402292231d4b36950685f395e4fb\",\"urls\":[\"bzz-raw://16477c802a46a2b53a68bceebdbb6fff4a246a802e00a659eb41bd9f291768c5\",\"dweb:/ipfs/Qmd6RaALUKkfrSYLgTY6MBn3Mts2vSjz6t95dEm5qwBWUz\"]}},\"version\":1}"}},"contracts/interfaces/IERC20.sol":{"IERC20":{"abi":[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}],"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"methodIdentifiers":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"}},"metadata":"{\"compiler\":{\"version\":\"0.8.27+commit.40a35a09\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface of the ERC20 standard as defined in the EIP.\",\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when the allowance of a `spender` for an `owner` is set by a call to {approve}. `value` is the new allowance.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `value` tokens are moved from one account (`from`) to another (`to`). Note that `value` may be zero.\"}},\"kind\":\"dev\",\"methods\":{\"allowance(address,address)\":{\"details\":\"Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called.\"},\"approve(address,uint256)\":{\"details\":\"Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event.\"},\"balanceOf(address)\":{\"details\":\"Returns the amount of tokens owned by `account`.\"},\"totalSupply()\":{\"details\":\"Returns the amount of tokens in existence.\"},\"transfer(address,uint256)\":{\"details\":\"Moves `amount` tokens from the caller's account to `to`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Moves `amount` tokens from `from` to `to` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/interfaces/IERC20.sol\":\"IERC20\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/interfaces/IERC20.sol\":{\"keccak256\":\"0xf60c3588615e47906292265ebdc539f36e624cc166a7e338972e8f7479b3c58e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d61baa7db1a5ec4126d6ab038d6975151bcb173437e51d4d141325fe99f4630c\",\"dweb:/ipfs/QmZ8mYs5xSjd3vNYZWjjBREpob2T84yu5kaHiFFXuVw1jj\"]}},\"version\":1}"}},"contracts/interfaces/IPriceOracle.sol":{"IPriceOracle":{"abi":[{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getAssetPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}],"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"methodIdentifiers":{"getAssetPrice(address)":"b3596f07"}},"metadata":"{\"compiler\":{\"version\":\"0.8.27+commit.40a35a09\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"asset\",\"type\":\"address\"}],\"name\":\"getAssetPrice\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/interfaces/IPriceOracle.sol\":\"IPriceOracle\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/interfaces/IPriceOracle.sol\":{\"keccak256\":\"0x88e35951f6e007528d847603c87e25af856f3105547ed6cbc4bcf037b9a87af0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ff0ccbf31c0fe66dc34db5a6e69437b06279ac3309fd2aeb133987754e1f9027\",\"dweb:/ipfs/QmQesoe8Q7KuZk5DbGNTdmfTDQdVqZrQc6X42jAZxJ4Sfm\"]}},\"version\":1}"}},"contracts/interfaces/IStakeUIHelper.sol":{"IStakeUIHelper":{"abi":[{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getUserStakeData","outputs":[{"components":[{"internalType":"uint256","name":"stakeTokenTotalSupply","type":"uint256"},{"internalType":"uint256","name":"stakeCooldownSeconds","type":"uint256"},{"internalType":"uint256","name":"stakeUnstakeWindow","type":"uint256"},{"internalType":"uint256","name":"rewardTokenPriceEth","type":"uint256"},{"internalType":"uint256","name":"stakeTokenPriceEth","type":"uint256"},{"internalType":"uint256","name":"rewardsPerSecond","type":"uint256"},{"internalType":"uint256","name":"exchangeRate","type":"uint256"},{"internalType":"uint256","name":"distributionEnd","type":"uint256"},{"internalType":"uint256","name":"stakeApy","type":"uint256"},{"internalType":"uint256","name":"userStakeTokenBalance","type":"uint256"},{"internalType":"uint256","name":"userUnderlyingTokenBalance","type":"uint256"},{"internalType":"uint256","name":"userRewardsToClaim","type":"uint256"},{"internalType":"uint256","name":"maxSlashable","type":"uint256"},{"components":[{"internalType":"uint40","name":"timestamp","type":"uint40"},{"internalType":"uint216","name":"amount","type":"uint216"}],"internalType":"struct IStakeUIHelper.CooldownData","name":"userCooldown","type":"tuple"}],"internalType":"struct IStakeUIHelper.StakeData","name":"","type":"tuple"}],"stateMutability":"view","type":"function"}],"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"methodIdentifiers":{"getUserStakeData(address)":"e9ce34a5"}},"metadata":"{\"compiler\":{\"version\":\"0.8.27+commit.40a35a09\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"getUserStakeData\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"stakeTokenTotalSupply\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakeCooldownSeconds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakeUnstakeWindow\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"rewardTokenPriceEth\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakeTokenPriceEth\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"rewardsPerSecond\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"exchangeRate\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"distributionEnd\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakeApy\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"userStakeTokenBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"userUnderlyingTokenBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"userRewardsToClaim\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxSlashable\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"uint40\",\"name\":\"timestamp\",\"type\":\"uint40\"},{\"internalType\":\"uint216\",\"name\":\"amount\",\"type\":\"uint216\"}],\"internalType\":\"struct IStakeUIHelper.CooldownData\",\"name\":\"userCooldown\",\"type\":\"tuple\"}],\"internalType\":\"struct IStakeUIHelper.StakeData\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"BGD Labs, modified by Pegasys\",\"kind\":\"dev\",\"methods\":{\"getUserStakeData(address)\":{\"details\":\"Returns all staking data for a specific user\",\"params\":{\"user\":\"Address of the user\"},\"returns\":{\"_0\":\"All staking data including general protocol data and user-specific data\"}}},\"title\":\"IStakeUIHelper\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"notice\":\"Interface for the StakeUIHelper contract that provides data for the staking UI\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/interfaces/IStakeUIHelper.sol\":\"IStakeUIHelper\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/interfaces/IStakeUIHelper.sol\":{\"keccak256\":\"0x8e75f743849d2edda80482c7e31e152533a9edab73f1a92340dceb970839bf7d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4566a486cc43810d8772d86dab0d4632597413c6fc6f6d6938a4984692031a30\",\"dweb:/ipfs/QmayLWkebo9Mv3B9GpgcpjqNfoBogqMPRW4qLAUdTWbnQR\"]}},\"version\":1}"}},"contracts/misc/StakeUIHelper.sol":{"StakeUIHelper":{"abi":[{"inputs":[{"internalType":"contract IPriceOracle","name":"priceOracle","type":"address"},{"internalType":"address","name":"psys","type":"address"},{"internalType":"contract AggregatedStakedPSYSV3","name":"stkPSYS","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"PRICE_ORACLE","outputs":[{"internalType":"contract IPriceOracle","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PSYS","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"STAKED_PSYS","outputs":[{"internalType":"contract AggregatedStakedPSYSV3","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getUserStakeData","outputs":[{"components":[{"internalType":"uint256","name":"stakeTokenTotalSupply","type":"uint256"},{"internalType":"uint256","name":"stakeCooldownSeconds","type":"uint256"},{"internalType":"uint256","name":"stakeUnstakeWindow","type":"uint256"},{"internalType":"uint256","name":"rewardTokenPriceEth","type":"uint256"},{"internalType":"uint256","name":"stakeTokenPriceEth","type":"uint256"},{"internalType":"uint256","name":"rewardsPerSecond","type":"uint256"},{"internalType":"uint256","name":"exchangeRate","type":"uint256"},{"internalType":"uint256","name":"distributionEnd","type":"uint256"},{"internalType":"uint256","name":"stakeApy","type":"uint256"},{"internalType":"uint256","name":"userStakeTokenBalance","type":"uint256"},{"internalType":"uint256","name":"userUnderlyingTokenBalance","type":"uint256"},{"internalType":"uint256","name":"userRewardsToClaim","type":"uint256"},{"internalType":"uint256","name":"maxSlashable","type":"uint256"},{"components":[{"internalType":"uint40","name":"timestamp","type":"uint40"},{"internalType":"uint216","name":"amount","type":"uint216"}],"internalType":"struct IStakeUIHelper.CooldownData","name":"userCooldown","type":"tuple"}],"internalType":"struct IStakeUIHelper.StakeData","name":"","type":"tuple"}],"stateMutability":"view","type":"function"}],"evm":{"bytecode":{"functionDebugData":{"@_935":{"entryPoint":null,"id":935,"parameterSlots":3,"returnSlots":0},"abi_decode_tuple_t_contract$_IPriceOracle_$825t_addresst_contract$_AggregatedStakedPSYSV3_$737_fromMemory":{"entryPoint":100,"id":null,"parameterSlots":2,"returnSlots":3},"validator_revert_contract_IPriceOracle":{"entryPoint":76,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nativeSrc":"0:777:5","nodeType":"YulBlock","src":"0:777:5","statements":[{"nativeSrc":"6:3:5","nodeType":"YulBlock","src":"6:3:5","statements":[]},{"body":{"nativeSrc":"73:86:5","nodeType":"YulBlock","src":"73:86:5","statements":[{"body":{"nativeSrc":"137:16:5","nodeType":"YulBlock","src":"137:16:5","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"146:1:5","nodeType":"YulLiteral","src":"146:1:5","type":"","value":"0"},{"kind":"number","nativeSrc":"149:1:5","nodeType":"YulLiteral","src":"149:1:5","type":"","value":"0"}],"functionName":{"name":"revert","nativeSrc":"139:6:5","nodeType":"YulIdentifier","src":"139:6:5"},"nativeSrc":"139:12:5","nodeType":"YulFunctionCall","src":"139:12:5"},"nativeSrc":"139:12:5","nodeType":"YulExpressionStatement","src":"139:12:5"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nativeSrc":"96:5:5","nodeType":"YulIdentifier","src":"96:5:5"},{"arguments":[{"name":"value","nativeSrc":"107:5:5","nodeType":"YulIdentifier","src":"107:5:5"},{"arguments":[{"arguments":[{"kind":"number","nativeSrc":"122:3:5","nodeType":"YulLiteral","src":"122:3:5","type":"","value":"160"},{"kind":"number","nativeSrc":"127:1:5","nodeType":"YulLiteral","src":"127:1:5","type":"","value":"1"}],"functionName":{"name":"shl","nativeSrc":"118:3:5","nodeType":"YulIdentifier","src":"118:3:5"},"nativeSrc":"118:11:5","nodeType":"YulFunctionCall","src":"118:11:5"},{"kind":"number","nativeSrc":"131:1:5","nodeType":"YulLiteral","src":"131:1:5","type":"","value":"1"}],"functionName":{"name":"sub","nativeSrc":"114:3:5","nodeType":"YulIdentifier","src":"114:3:5"},"nativeSrc":"114:19:5","nodeType":"YulFunctionCall","src":"114:19:5"}],"functionName":{"name":"and","nativeSrc":"103:3:5","nodeType":"YulIdentifier","src":"103:3:5"},"nativeSrc":"103:31:5","nodeType":"YulFunctionCall","src":"103:31:5"}],"functionName":{"name":"eq","nativeSrc":"93:2:5","nodeType":"YulIdentifier","src":"93:2:5"},"nativeSrc":"93:42:5","nodeType":"YulFunctionCall","src":"93:42:5"}],"functionName":{"name":"iszero","nativeSrc":"86:6:5","nodeType":"YulIdentifier","src":"86:6:5"},"nativeSrc":"86:50:5","nodeType":"YulFunctionCall","src":"86:50:5"},"nativeSrc":"83:70:5","nodeType":"YulIf","src":"83:70:5"}]},"name":"validator_revert_contract_IPriceOracle","nativeSrc":"14:145:5","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nativeSrc":"62:5:5","nodeType":"YulTypedName","src":"62:5:5","type":""}],"src":"14:145:5"},{"body":{"nativeSrc":"329:446:5","nodeType":"YulBlock","src":"329:446:5","statements":[{"body":{"nativeSrc":"375:16:5","nodeType":"YulBlock","src":"375:16:5","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"384:1:5","nodeType":"YulLiteral","src":"384:1:5","type":"","value":"0"},{"kind":"number","nativeSrc":"387:1:5","nodeType":"YulLiteral","src":"387:1:5","type":"","value":"0"}],"functionName":{"name":"revert","nativeSrc":"377:6:5","nodeType":"YulIdentifier","src":"377:6:5"},"nativeSrc":"377:12:5","nodeType":"YulFunctionCall","src":"377:12:5"},"nativeSrc":"377:12:5","nodeType":"YulExpressionStatement","src":"377:12:5"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nativeSrc":"350:7:5","nodeType":"YulIdentifier","src":"350:7:5"},{"name":"headStart","nativeSrc":"359:9:5","nodeType":"YulIdentifier","src":"359:9:5"}],"functionName":{"name":"sub","nativeSrc":"346:3:5","nodeType":"YulIdentifier","src":"346:3:5"},"nativeSrc":"346:23:5","nodeType":"YulFunctionCall","src":"346:23:5"},{"kind":"number","nativeSrc":"371:2:5","nodeType":"YulLiteral","src":"371:2:5","type":"","value":"96"}],"functionName":{"name":"slt","nativeSrc":"342:3:5","nodeType":"YulIdentifier","src":"342:3:5"},"nativeSrc":"342:32:5","nodeType":"YulFunctionCall","src":"342:32:5"},"nativeSrc":"339:52:5","nodeType":"YulIf","src":"339:52:5"},{"nativeSrc":"400:29:5","nodeType":"YulVariableDeclaration","src":"400:29:5","value":{"arguments":[{"name":"headStart","nativeSrc":"419:9:5","nodeType":"YulIdentifier","src":"419:9:5"}],"functionName":{"name":"mload","nativeSrc":"413:5:5","nodeType":"YulIdentifier","src":"413:5:5"},"nativeSrc":"413:16:5","nodeType":"YulFunctionCall","src":"413:16:5"},"variables":[{"name":"value","nativeSrc":"404:5:5","nodeType":"YulTypedName","src":"404:5:5","type":""}]},{"expression":{"arguments":[{"name":"value","nativeSrc":"477:5:5","nodeType":"YulIdentifier","src":"477:5:5"}],"functionName":{"name":"validator_revert_contract_IPriceOracle","nativeSrc":"438:38:5","nodeType":"YulIdentifier","src":"438:38:5"},"nativeSrc":"438:45:5","nodeType":"YulFunctionCall","src":"438:45:5"},"nativeSrc":"438:45:5","nodeType":"YulExpressionStatement","src":"438:45:5"},{"nativeSrc":"492:15:5","nodeType":"YulAssignment","src":"492:15:5","value":{"name":"value","nativeSrc":"502:5:5","nodeType":"YulIdentifier","src":"502:5:5"},"variableNames":[{"name":"value0","nativeSrc":"492:6:5","nodeType":"YulIdentifier","src":"492:6:5"}]},{"nativeSrc":"516:40:5","nodeType":"YulVariableDeclaration","src":"516:40:5","value":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"541:9:5","nodeType":"YulIdentifier","src":"541:9:5"},{"kind":"number","nativeSrc":"552:2:5","nodeType":"YulLiteral","src":"552:2:5","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"537:3:5","nodeType":"YulIdentifier","src":"537:3:5"},"nativeSrc":"537:18:5","nodeType":"YulFunctionCall","src":"537:18:5"}],"functionName":{"name":"mload","nativeSrc":"531:5:5","nodeType":"YulIdentifier","src":"531:5:5"},"nativeSrc":"531:25:5","nodeType":"YulFunctionCall","src":"531:25:5"},"variables":[{"name":"value_1","nativeSrc":"520:7:5","nodeType":"YulTypedName","src":"520:7:5","type":""}]},{"expression":{"arguments":[{"name":"value_1","nativeSrc":"604:7:5","nodeType":"YulIdentifier","src":"604:7:5"}],"functionName":{"name":"validator_revert_contract_IPriceOracle","nativeSrc":"565:38:5","nodeType":"YulIdentifier","src":"565:38:5"},"nativeSrc":"565:47:5","nodeType":"YulFunctionCall","src":"565:47:5"},"nativeSrc":"565:47:5","nodeType":"YulExpressionStatement","src":"565:47:5"},{"nativeSrc":"621:17:5","nodeType":"YulAssignment","src":"621:17:5","value":{"name":"value_1","nativeSrc":"631:7:5","nodeType":"YulIdentifier","src":"631:7:5"},"variableNames":[{"name":"value1","nativeSrc":"621:6:5","nodeType":"YulIdentifier","src":"621:6:5"}]},{"nativeSrc":"647:40:5","nodeType":"YulVariableDeclaration","src":"647:40:5","value":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"672:9:5","nodeType":"YulIdentifier","src":"672:9:5"},{"kind":"number","nativeSrc":"683:2:5","nodeType":"YulLiteral","src":"683:2:5","type":"","value":"64"}],"functionName":{"name":"add","nativeSrc":"668:3:5","nodeType":"YulIdentifier","src":"668:3:5"},"nativeSrc":"668:18:5","nodeType":"YulFunctionCall","src":"668:18:5"}],"functionName":{"name":"mload","nativeSrc":"662:5:5","nodeType":"YulIdentifier","src":"662:5:5"},"nativeSrc":"662:25:5","nodeType":"YulFunctionCall","src":"662:25:5"},"variables":[{"name":"value_2","nativeSrc":"651:7:5","nodeType":"YulTypedName","src":"651:7:5","type":""}]},{"expression":{"arguments":[{"name":"value_2","nativeSrc":"735:7:5","nodeType":"YulIdentifier","src":"735:7:5"}],"functionName":{"name":"validator_revert_contract_IPriceOracle","nativeSrc":"696:38:5","nodeType":"YulIdentifier","src":"696:38:5"},"nativeSrc":"696:47:5","nodeType":"YulFunctionCall","src":"696:47:5"},"nativeSrc":"696:47:5","nodeType":"YulExpressionStatement","src":"696:47:5"},{"nativeSrc":"752:17:5","nodeType":"YulAssignment","src":"752:17:5","value":{"name":"value_2","nativeSrc":"762:7:5","nodeType":"YulIdentifier","src":"762:7:5"},"variableNames":[{"name":"value2","nativeSrc":"752:6:5","nodeType":"YulIdentifier","src":"752:6:5"}]}]},"name":"abi_decode_tuple_t_contract$_IPriceOracle_$825t_addresst_contract$_AggregatedStakedPSYSV3_$737_fromMemory","nativeSrc":"164:611:5","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"279:9:5","nodeType":"YulTypedName","src":"279:9:5","type":""},{"name":"dataEnd","nativeSrc":"290:7:5","nodeType":"YulTypedName","src":"290:7:5","type":""}],"returnVariables":[{"name":"value0","nativeSrc":"302:6:5","nodeType":"YulTypedName","src":"302:6:5","type":""},{"name":"value1","nativeSrc":"310:6:5","nodeType":"YulTypedName","src":"310:6:5","type":""},{"name":"value2","nativeSrc":"318:6:5","nodeType":"YulTypedName","src":"318:6:5","type":""}],"src":"164:611:5"}]},"contents":"{\n    { }\n    function validator_revert_contract_IPriceOracle(value)\n    {\n        if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n    }\n    function abi_decode_tuple_t_contract$_IPriceOracle_$825t_addresst_contract$_AggregatedStakedPSYSV3_$737_fromMemory(headStart, dataEnd) -> value0, value1, value2\n    {\n        if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n        let value := mload(headStart)\n        validator_revert_contract_IPriceOracle(value)\n        value0 := value\n        let value_1 := mload(add(headStart, 32))\n        validator_revert_contract_IPriceOracle(value_1)\n        value1 := value_1\n        let value_2 := mload(add(headStart, 64))\n        validator_revert_contract_IPriceOracle(value_2)\n        value2 := value_2\n    }\n}","id":5,"language":"Yul","name":"#utility.yul"}],"linkReferences":{},"object":"60e060405234801561001057600080fd5b50604051610d3b380380610d3b83398101604081905261002f91610064565b6001600160a01b0392831660805290821660a0521660c0526100b1565b6001600160a01b038116811461006157600080fd5b50565b60008060006060848603121561007957600080fd5b83516100848161004c565b60208501519093506100958161004c565b60408501519092506100a68161004c565b809150509250925092565b60805160a05160c051610bfc61013f6000396000818160c101528181610115015281816101a00152818161022b0152818161038201528181610405015281816104f101528181610611015281816106a60152818161074c015281816107710152610827015260008181609a015281816102c90152610581015260008181605601526102f10152610bfc6000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80630a19399a146100515780634ac79d9614610095578063e0fdf79f146100bc578063e9ce34a5146100e3575b600080fd5b6100787f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6100787f000000000000000000000000000000000000000000000000000000000000000081565b6100787f000000000000000000000000000000000000000000000000000000000000000081565b6100f66100f13660046109a7565b610103565b60405161008c91906109d0565b61010b61090e565b61011361090e565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610171573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101959190610a94565b8160000181815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663616e0bf96040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101fc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102209190610a94565b8160200181815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663359c4a966040518163ffffffff1660e01b8152600401602060405180830381865afa158015610287573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102ab9190610a94565b6040828101919091525163b3596f0760e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660048301527f0000000000000000000000000000000000000000000000000000000000000000169063b3596f0790602401602060405180830381865afa158015610338573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061035c9190610a94565b606082018190526080820152604080516339aa885b60e21b815290516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169163e6aa216c9160048083019260209291908290030181865afa1580156103cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103f19190610ac9565b6001600160d81b03168160c00181815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f34d96da6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610461573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104859190610a94565b610180820152600080610496610745565b60a0850182905260e08501819052845160c08601519294509092506104bd918491906108aa565b6101008401526001600160a01b0385161561073c576040516370a0823160e01b81526001600160a01b0386811660048301527f000000000000000000000000000000000000000000000000000000000000000016906370a0823190602401602060405180830381865afa158015610538573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055c9190610a94565b6101208401526040516370a0823160e01b81526001600160a01b0386811660048301527f000000000000000000000000000000000000000000000000000000000000000016906370a0823190602401602060405180830381865afa1580156105c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ec9190610a94565b6101408401526040516346df7f7160e11b81526001600160a01b0386811660048301527f00000000000000000000000000000000000000000000000000000000000000001690638dbefee290602401602060405180830381865afa158015610658573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061067c9190610a94565b61016084015260405163091030c360e01b81526001600160a01b03868116600483015260009182917f0000000000000000000000000000000000000000000000000000000000000000169063091030c3906024016040805180830381865afa1580156106ec573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107109190610ae4565b6040805180820190915264ffffffffff90921682526001600160d81b031660208201526101a086015250505b50909392505050565b60008060007f0000000000000000000000000000000000000000000000000000000000000000905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663919cd40f6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107f19190610a94565b905080421061080557600094909350915050565b604051631e23703160e31b81526001600160a01b0383811660048301526000917f00000000000000000000000000000000000000000000000000000000000000009091169063f11b818890602401606060405180830381865afa158015610870573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108949190610b3a565b50506001600160801b0316959194509092505050565b6000826000036108bc57506000610907565b6000670de0b6b3a7640000836108d66301e1338088610b79565b6108e09190610b79565b6108ea9190610ba4565b9050836108f961271083610b79565b6109039190610ba4565b9150505b9392505050565b604051806101c00160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016109a26040518060400160405280600064ffffffffff16815260200160006001600160d81b031681525090565b905290565b6000602082840312156109b957600080fd5b81356001600160a01b038116811461090757600080fd5b60006101e082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e08301526101008301516101008301526101208301516101208301526101408301516101408301526101608301516101608301526101808301516101808301526101a0830151610a8d6101a0840182805164ffffffffff1682526020908101516001600160d81b0316910152565b5092915050565b600060208284031215610aa657600080fd5b5051919050565b80516001600160d81b0381168114610ac457600080fd5b919050565b600060208284031215610adb57600080fd5b61090782610aad565b60008060408385031215610af757600080fd5b825164ffffffffff81168114610b0c57600080fd5b9150610b1a60208401610aad565b90509250929050565b80516001600160801b0381168114610ac457600080fd5b600080600060608486031215610b4f57600080fd5b610b5884610b23565b9250610b6660208501610b23565b6040949094015192959394509192915050565b8082028115828204841417610b9e57634e487b7160e01b600052601160045260246000fd5b92915050565b600082610bc157634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220d92f7ef2a9761b707d99a36179f184449fb9cceb10d278e93be8fcf4da23b00064736f6c634300081b0033","opcodes":"PUSH1 0xE0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0xD3B CODESIZE SUB DUP1 PUSH2 0xD3B DUP4 CODECOPY DUP2 ADD PUSH1 0x40 DUP2 SWAP1 MSTORE PUSH2 0x2F SWAP2 PUSH2 0x64 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 DUP4 AND PUSH1 0x80 MSTORE SWAP1 DUP3 AND PUSH1 0xA0 MSTORE AND PUSH1 0xC0 MSTORE PUSH2 0xB1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0x61 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x79 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 MLOAD PUSH2 0x84 DUP2 PUSH2 0x4C JUMP JUMPDEST PUSH1 0x20 DUP6 ADD MLOAD SWAP1 SWAP4 POP PUSH2 0x95 DUP2 PUSH2 0x4C JUMP JUMPDEST PUSH1 0x40 DUP6 ADD MLOAD SWAP1 SWAP3 POP PUSH2 0xA6 DUP2 PUSH2 0x4C JUMP JUMPDEST DUP1 SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH1 0xA0 MLOAD PUSH1 0xC0 MLOAD PUSH2 0xBFC PUSH2 0x13F PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH1 0xC1 ADD MSTORE DUP2 DUP2 PUSH2 0x115 ADD MSTORE DUP2 DUP2 PUSH2 0x1A0 ADD MSTORE DUP2 DUP2 PUSH2 0x22B ADD MSTORE DUP2 DUP2 PUSH2 0x382 ADD MSTORE DUP2 DUP2 PUSH2 0x405 ADD MSTORE DUP2 DUP2 PUSH2 0x4F1 ADD MSTORE DUP2 DUP2 PUSH2 0x611 ADD MSTORE DUP2 DUP2 PUSH2 0x6A6 ADD MSTORE DUP2 DUP2 PUSH2 0x74C ADD MSTORE DUP2 DUP2 PUSH2 0x771 ADD MSTORE PUSH2 0x827 ADD MSTORE PUSH1 0x0 DUP2 DUP2 PUSH1 0x9A ADD MSTORE DUP2 DUP2 PUSH2 0x2C9 ADD MSTORE PUSH2 0x581 ADD MSTORE PUSH1 0x0 DUP2 DUP2 PUSH1 0x56 ADD MSTORE PUSH2 0x2F1 ADD MSTORE PUSH2 0xBFC PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x4C JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xA19399A EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x4AC79D96 EQ PUSH2 0x95 JUMPI DUP1 PUSH4 0xE0FDF79F EQ PUSH2 0xBC JUMPI DUP1 PUSH4 0xE9CE34A5 EQ PUSH2 0xE3 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x78 PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x78 PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH2 0x78 PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH2 0xF6 PUSH2 0xF1 CALLDATASIZE PUSH1 0x4 PUSH2 0x9A7 JUMP JUMPDEST PUSH2 0x103 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x8C SWAP2 SWAP1 PUSH2 0x9D0 JUMP JUMPDEST PUSH2 0x10B PUSH2 0x90E JUMP JUMPDEST PUSH2 0x113 PUSH2 0x90E JUMP JUMPDEST PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x18160DDD PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x171 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x195 SWAP2 SWAP1 PUSH2 0xA94 JUMP JUMPDEST DUP2 PUSH1 0x0 ADD DUP2 DUP2 MSTORE POP POP PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x616E0BF9 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1FC JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x220 SWAP2 SWAP1 PUSH2 0xA94 JUMP JUMPDEST DUP2 PUSH1 0x20 ADD DUP2 DUP2 MSTORE POP POP PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x359C4A96 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x287 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2AB SWAP2 SWAP1 PUSH2 0xA94 JUMP JUMPDEST PUSH1 0x40 DUP3 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE MLOAD PUSH4 0xB3596F07 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE PUSH32 0x0 AND SWAP1 PUSH4 0xB3596F07 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x338 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x35C SWAP2 SWAP1 PUSH2 0xA94 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x80 DUP3 ADD MSTORE PUSH1 0x40 DUP1 MLOAD PUSH4 0x39AA885B PUSH1 0xE2 SHL DUP2 MSTORE SWAP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND SWAP2 PUSH4 0xE6AA216C SWAP2 PUSH1 0x4 DUP1 DUP4 ADD SWAP3 PUSH1 0x20 SWAP3 SWAP2 SWAP1 DUP3 SWAP1 SUB ADD DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x3CD JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x3F1 SWAP2 SWAP1 PUSH2 0xAC9 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xD8 SHL SUB AND DUP2 PUSH1 0xC0 ADD DUP2 DUP2 MSTORE POP POP PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xF34D96DA PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x461 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x485 SWAP2 SWAP1 PUSH2 0xA94 JUMP JUMPDEST PUSH2 0x180 DUP3 ADD MSTORE PUSH1 0x0 DUP1 PUSH2 0x496 PUSH2 0x745 JUMP JUMPDEST PUSH1 0xA0 DUP6 ADD DUP3 SWAP1 MSTORE PUSH1 0xE0 DUP6 ADD DUP2 SWAP1 MSTORE DUP5 MLOAD PUSH1 0xC0 DUP7 ADD MLOAD SWAP3 SWAP5 POP SWAP1 SWAP3 POP PUSH2 0x4BD SWAP2 DUP5 SWAP2 SWAP1 PUSH2 0x8AA JUMP JUMPDEST PUSH2 0x100 DUP5 ADD MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND ISZERO PUSH2 0x73C JUMPI PUSH1 0x40 MLOAD PUSH4 0x70A08231 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE PUSH32 0x0 AND SWAP1 PUSH4 0x70A08231 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x538 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x55C SWAP2 SWAP1 PUSH2 0xA94 JUMP JUMPDEST PUSH2 0x120 DUP5 ADD MSTORE PUSH1 0x40 MLOAD PUSH4 0x70A08231 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE PUSH32 0x0 AND SWAP1 PUSH4 0x70A08231 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x5C8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x5EC SWAP2 SWAP1 PUSH2 0xA94 JUMP JUMPDEST PUSH2 0x140 DUP5 ADD MSTORE PUSH1 0x40 MLOAD PUSH4 0x46DF7F71 PUSH1 0xE1 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE PUSH32 0x0 AND SWAP1 PUSH4 0x8DBEFEE2 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x658 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x67C SWAP2 SWAP1 PUSH2 0xA94 JUMP JUMPDEST PUSH2 0x160 DUP5 ADD MSTORE PUSH1 0x40 MLOAD PUSH4 0x91030C3 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE PUSH1 0x0 SWAP2 DUP3 SWAP2 PUSH32 0x0 AND SWAP1 PUSH4 0x91030C3 SWAP1 PUSH1 0x24 ADD PUSH1 0x40 DUP1 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x6EC JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x710 SWAP2 SWAP1 PUSH2 0xAE4 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH5 0xFFFFFFFFFF SWAP1 SWAP3 AND DUP3 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xD8 SHL SUB AND PUSH1 0x20 DUP3 ADD MSTORE PUSH2 0x1A0 DUP7 ADD MSTORE POP POP JUMPDEST POP SWAP1 SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH32 0x0 SWAP1 POP PUSH1 0x0 PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x919CD40F PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x7CD JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x7F1 SWAP2 SWAP1 PUSH2 0xA94 JUMP JUMPDEST SWAP1 POP DUP1 TIMESTAMP LT PUSH2 0x805 JUMPI PUSH1 0x0 SWAP5 SWAP1 SWAP4 POP SWAP2 POP POP JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x1E237031 PUSH1 0xE3 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE PUSH1 0x0 SWAP2 PUSH32 0x0 SWAP1 SWAP2 AND SWAP1 PUSH4 0xF11B8188 SWAP1 PUSH1 0x24 ADD PUSH1 0x60 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x870 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x894 SWAP2 SWAP1 PUSH2 0xB3A JUMP JUMPDEST POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB AND SWAP6 SWAP2 SWAP5 POP SWAP1 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x0 SUB PUSH2 0x8BC JUMPI POP PUSH1 0x0 PUSH2 0x907 JUMP JUMPDEST PUSH1 0x0 PUSH8 0xDE0B6B3A7640000 DUP4 PUSH2 0x8D6 PUSH4 0x1E13380 DUP9 PUSH2 0xB79 JUMP JUMPDEST PUSH2 0x8E0 SWAP2 SWAP1 PUSH2 0xB79 JUMP JUMPDEST PUSH2 0x8EA SWAP2 SWAP1 PUSH2 0xBA4 JUMP JUMPDEST SWAP1 POP DUP4 PUSH2 0x8F9 PUSH2 0x2710 DUP4 PUSH2 0xB79 JUMP JUMPDEST PUSH2 0x903 SWAP2 SWAP1 PUSH2 0xBA4 JUMP JUMPDEST SWAP2 POP POP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH2 0x1C0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x9A2 PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH5 0xFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xD8 SHL SUB AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST SWAP1 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x9B9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0x907 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1E0 DUP3 ADD SWAP1 POP DUP3 MLOAD DUP3 MSTORE PUSH1 0x20 DUP4 ADD MLOAD PUSH1 0x20 DUP4 ADD MSTORE PUSH1 0x40 DUP4 ADD MLOAD PUSH1 0x40 DUP4 ADD MSTORE PUSH1 0x60 DUP4 ADD MLOAD PUSH1 0x60 DUP4 ADD MSTORE PUSH1 0x80 DUP4 ADD MLOAD PUSH1 0x80 DUP4 ADD MSTORE PUSH1 0xA0 DUP4 ADD MLOAD PUSH1 0xA0 DUP4 ADD MSTORE PUSH1 0xC0 DUP4 ADD MLOAD PUSH1 0xC0 DUP4 ADD MSTORE PUSH1 0xE0 DUP4 ADD MLOAD PUSH1 0xE0 DUP4 ADD MSTORE PUSH2 0x100 DUP4 ADD MLOAD PUSH2 0x100 DUP4 ADD MSTORE PUSH2 0x120 DUP4 ADD MLOAD PUSH2 0x120 DUP4 ADD MSTORE PUSH2 0x140 DUP4 ADD MLOAD PUSH2 0x140 DUP4 ADD MSTORE PUSH2 0x160 DUP4 ADD MLOAD PUSH2 0x160 DUP4 ADD MSTORE PUSH2 0x180 DUP4 ADD MLOAD PUSH2 0x180 DUP4 ADD MSTORE PUSH2 0x1A0 DUP4 ADD MLOAD PUSH2 0xA8D PUSH2 0x1A0 DUP5 ADD DUP3 DUP1 MLOAD PUSH5 0xFFFFFFFFFF AND DUP3 MSTORE PUSH1 0x20 SWAP1 DUP2 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xD8 SHL SUB AND SWAP2 ADD MSTORE JUMP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xAA6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP MLOAD SWAP2 SWAP1 POP JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xD8 SHL SUB DUP2 AND DUP2 EQ PUSH2 0xAC4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xADB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x907 DUP3 PUSH2 0xAAD JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xAF7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 MLOAD PUSH5 0xFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0xB0C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 POP PUSH2 0xB1A PUSH1 0x20 DUP5 ADD PUSH2 0xAAD JUMP JUMPDEST SWAP1 POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB DUP2 AND DUP2 EQ PUSH2 0xAC4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0xB4F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB58 DUP5 PUSH2 0xB23 JUMP JUMPDEST SWAP3 POP PUSH2 0xB66 PUSH1 0x20 DUP6 ADD PUSH2 0xB23 JUMP JUMPDEST PUSH1 0x40 SWAP5 SWAP1 SWAP5 ADD MLOAD SWAP3 SWAP6 SWAP4 SWAP5 POP SWAP2 SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 DUP3 MUL DUP2 ISZERO DUP3 DUP3 DIV DUP5 EQ OR PUSH2 0xB9E JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH2 0xBC1 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP DIV SWAP1 JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xD9 0x2F PUSH31 0xF2A9761B707D99A36179F184449FB9CCEB10D278E93BE8FCF4DA23B0006473 PUSH16 0x6C634300081B00330000000000000000 ","sourceMap":"443:2973:4:-:0;;;771:181;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;877:26:4;;;;;909:11;;;;;926:21;;;443:2973;;14:145:5;-1:-1:-1;;;;;103:31:5;;93:42;;83:70;;149:1;146;139:12;83:70;14:145;:::o;164:611::-;302:6;310;318;371:2;359:9;350:7;346:23;342:32;339:52;;;387:1;384;377:12;339:52;419:9;413:16;438:45;477:5;438:45;:::i;:::-;552:2;537:18;;531:25;502:5;;-1:-1:-1;565:47:5;531:25;565:47;:::i;:::-;683:2;668:18;;662:25;631:7;;-1:-1:-1;696:47:5;662:25;696:47;:::i;:::-;762:7;752:17;;;164:611;;;;;:::o;:::-;443:2973:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"},"deployedBytecode":{"functionDebugData":{"@PRICE_ORACLE_891":{"entryPoint":null,"id":891,"parameterSlots":0,"returnSlots":0},"@PSYS_893":{"entryPoint":null,"id":893,"parameterSlots":0,"returnSlots":0},"@STAKED_PSYS_896":{"entryPoint":null,"id":896,"parameterSlots":0,"returnSlots":0},"@_calculateApy_1129":{"entryPoint":2218,"id":1129,"parameterSlots":3,"returnSlots":1},"@_getRewardsData_1172":{"entryPoint":1861,"id":1172,"parameterSlots":0,"returnSlots":2},"@getUserStakeData_1093":{"entryPoint":259,"id":1093,"parameterSlots":1,"returnSlots":1},"abi_decode_tuple_t_address":{"entryPoint":2471,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_uint128t_uint128t_uint256_fromMemory":{"entryPoint":2874,"id":null,"parameterSlots":2,"returnSlots":3},"abi_decode_tuple_t_uint216_fromMemory":{"entryPoint":2761,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_uint256_fromMemory":{"entryPoint":2708,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_uint40t_uint216_fromMemory":{"entryPoint":2788,"id":null,"parameterSlots":2,"returnSlots":2},"abi_decode_uint128_fromMemory":{"entryPoint":2851,"id":null,"parameterSlots":1,"returnSlots":1},"abi_decode_uint216_fromMemory":{"entryPoint":2733,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_struct_CooldownData":{"entryPoint":null,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_tuple_t_address__to_t_address__fromStack_reversed":{"entryPoint":null,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_contract$_AggregatedStakedPSYSV3_$737__to_t_address__fromStack_reversed":{"entryPoint":null,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_contract$_IPriceOracle_$825__to_t_address__fromStack_reversed":{"entryPoint":null,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_struct$_StakeData_$865_memory_ptr__to_t_struct$_StakeData_$865_memory_ptr__fromStack_reversed":{"entryPoint":2512,"id":null,"parameterSlots":2,"returnSlots":1},"checked_div_t_uint256":{"entryPoint":2980,"id":null,"parameterSlots":2,"returnSlots":1},"checked_mul_t_uint256":{"entryPoint":2937,"id":null,"parameterSlots":2,"returnSlots":1}},"generatedSources":[{"ast":{"nativeSrc":"0:4425:5","nodeType":"YulBlock","src":"0:4425:5","statements":[{"nativeSrc":"6:3:5","nodeType":"YulBlock","src":"6:3:5","statements":[]},{"body":{"nativeSrc":"135:102:5","nodeType":"YulBlock","src":"135:102:5","statements":[{"nativeSrc":"145:26:5","nodeType":"YulAssignment","src":"145:26:5","value":{"arguments":[{"name":"headStart","nativeSrc":"157:9:5","nodeType":"YulIdentifier","src":"157:9:5"},{"kind":"number","nativeSrc":"168:2:5","nodeType":"YulLiteral","src":"168:2:5","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"153:3:5","nodeType":"YulIdentifier","src":"153:3:5"},"nativeSrc":"153:18:5","nodeType":"YulFunctionCall","src":"153:18:5"},"variableNames":[{"name":"tail","nativeSrc":"145:4:5","nodeType":"YulIdentifier","src":"145:4:5"}]},{"expression":{"arguments":[{"name":"headStart","nativeSrc":"187:9:5","nodeType":"YulIdentifier","src":"187:9:5"},{"arguments":[{"name":"value0","nativeSrc":"202:6:5","nodeType":"YulIdentifier","src":"202:6:5"},{"arguments":[{"arguments":[{"kind":"number","nativeSrc":"218:3:5","nodeType":"YulLiteral","src":"218:3:5","type":"","value":"160"},{"kind":"number","nativeSrc":"223:1:5","nodeType":"YulLiteral","src":"223:1:5","type":"","value":"1"}],"functionName":{"name":"shl","nativeSrc":"214:3:5","nodeType":"YulIdentifier","src":"214:3:5"},"nativeSrc":"214:11:5","nodeType":"YulFunctionCall","src":"214:11:5"},{"kind":"number","nativeSrc":"227:1:5","nodeType":"YulLiteral","src":"227:1:5","type":"","value":"1"}],"functionName":{"name":"sub","nativeSrc":"210:3:5","nodeType":"YulIdentifier","src":"210:3:5"},"nativeSrc":"210:19:5","nodeType":"YulFunctionCall","src":"210:19:5"}],"functionName":{"name":"and","nativeSrc":"198:3:5","nodeType":"YulIdentifier","src":"198:3:5"},"nativeSrc":"198:32:5","nodeType":"YulFunctionCall","src":"198:32:5"}],"functionName":{"name":"mstore","nativeSrc":"180:6:5","nodeType":"YulIdentifier","src":"180:6:5"},"nativeSrc":"180:51:5","nodeType":"YulFunctionCall","src":"180:51:5"},"nativeSrc":"180:51:5","nodeType":"YulExpressionStatement","src":"180:51:5"}]},"name":"abi_encode_tuple_t_contract$_IPriceOracle_$825__to_t_address__fromStack_reversed","nativeSrc":"14:223:5","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"104:9:5","nodeType":"YulTypedName","src":"104:9:5","type":""},{"name":"value0","nativeSrc":"115:6:5","nodeType":"YulTypedName","src":"115:6:5","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"126:4:5","nodeType":"YulTypedName","src":"126:4:5","type":""}],"src":"14:223:5"},{"body":{"nativeSrc":"343:102:5","nodeType":"YulBlock","src":"343:102:5","statements":[{"nativeSrc":"353:26:5","nodeType":"YulAssignment","src":"353:26:5","value":{"arguments":[{"name":"headStart","nativeSrc":"365:9:5","nodeType":"YulIdentifier","src":"365:9:5"},{"kind":"number","nativeSrc":"376:2:5","nodeType":"YulLiteral","src":"376:2:5","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"361:3:5","nodeType":"YulIdentifier","src":"361:3:5"},"nativeSrc":"361:18:5","nodeType":"YulFunctionCall","src":"361:18:5"},"variableNames":[{"name":"tail","nativeSrc":"353:4:5","nodeType":"YulIdentifier","src":"353:4:5"}]},{"expression":{"arguments":[{"name":"headStart","nativeSrc":"395:9:5","nodeType":"YulIdentifier","src":"395:9:5"},{"arguments":[{"name":"value0","nativeSrc":"410:6:5","nodeType":"YulIdentifier","src":"410:6:5"},{"arguments":[{"arguments":[{"kind":"number","nativeSrc":"426:3:5","nodeType":"YulLiteral","src":"426:3:5","type":"","value":"160"},{"kind":"number","nativeSrc":"431:1:5","nodeType":"YulLiteral","src":"431:1:5","type":"","value":"1"}],"functionName":{"name":"shl","nativeSrc":"422:3:5","nodeType":"YulIdentifier","src":"422:3:5"},"nativeSrc":"422:11:5","nodeType":"YulFunctionCall","src":"422:11:5"},{"kind":"number","nativeSrc":"435:1:5","nodeType":"YulLiteral","src":"435:1:5","type":"","value":"1"}],"functionName":{"name":"sub","nativeSrc":"418:3:5","nodeType":"YulIdentifier","src":"418:3:5"},"nativeSrc":"418:19:5","nodeType":"YulFunctionCall","src":"418:19:5"}],"functionName":{"name":"and","nativeSrc":"406:3:5","nodeType":"YulIdentifier","src":"406:3:5"},"nativeSrc":"406:32:5","nodeType":"YulFunctionCall","src":"406:32:5"}],"functionName":{"name":"mstore","nativeSrc":"388:6:5","nodeType":"YulIdentifier","src":"388:6:5"},"nativeSrc":"388:51:5","nodeType":"YulFunctionCall","src":"388:51:5"},"nativeSrc":"388:51:5","nodeType":"YulExpressionStatement","src":"388:51:5"}]},"name":"abi_encode_tuple_t_address__to_t_address__fromStack_reversed","nativeSrc":"242:203:5","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"312:9:5","nodeType":"YulTypedName","src":"312:9:5","type":""},{"name":"value0","nativeSrc":"323:6:5","nodeType":"YulTypedName","src":"323:6:5","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"334:4:5","nodeType":"YulTypedName","src":"334:4:5","type":""}],"src":"242:203:5"},{"body":{"nativeSrc":"581:102:5","nodeType":"YulBlock","src":"581:102:5","statements":[{"nativeSrc":"591:26:5","nodeType":"YulAssignment","src":"591:26:5","value":{"arguments":[{"name":"headStart","nativeSrc":"603:9:5","nodeType":"YulIdentifier","src":"603:9:5"},{"kind":"number","nativeSrc":"614:2:5","nodeType":"YulLiteral","src":"614:2:5","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"599:3:5","nodeType":"YulIdentifier","src":"599:3:5"},"nativeSrc":"599:18:5","nodeType":"YulFunctionCall","src":"599:18:5"},"variableNames":[{"name":"tail","nativeSrc":"591:4:5","nodeType":"YulIdentifier","src":"591:4:5"}]},{"expression":{"arguments":[{"name":"headStart","nativeSrc":"633:9:5","nodeType":"YulIdentifier","src":"633:9:5"},{"arguments":[{"name":"value0","nativeSrc":"648:6:5","nodeType":"YulIdentifier","src":"648:6:5"},{"arguments":[{"arguments":[{"kind":"number","nativeSrc":"664:3:5","nodeType":"YulLiteral","src":"664:3:5","type":"","value":"160"},{"kind":"number","nativeSrc":"669:1:5","nodeType":"YulLiteral","src":"669:1:5","type":"","value":"1"}],"functionName":{"name":"shl","nativeSrc":"660:3:5","nodeType":"YulIdentifier","src":"660:3:5"},"nativeSrc":"660:11:5","nodeType":"YulFunctionCall","src":"660:11:5"},{"kind":"number","nativeSrc":"673:1:5","nodeType":"YulLiteral","src":"673:1:5","type":"","value":"1"}],"functionName":{"name":"sub","nativeSrc":"656:3:5","nodeType":"YulIdentifier","src":"656:3:5"},"nativeSrc":"656:19:5","nodeType":"YulFunctionCall","src":"656:19:5"}],"functionName":{"name":"and","nativeSrc":"644:3:5","nodeType":"YulIdentifier","src":"644:3:5"},"nativeSrc":"644:32:5","nodeType":"YulFunctionCall","src":"644:32:5"}],"functionName":{"name":"mstore","nativeSrc":"626:6:5","nodeType":"YulIdentifier","src":"626:6:5"},"nativeSrc":"626:51:5","nodeType":"YulFunctionCall","src":"626:51:5"},"nativeSrc":"626:51:5","nodeType":"YulExpressionStatement","src":"626:51:5"}]},"name":"abi_encode_tuple_t_contract$_AggregatedStakedPSYSV3_$737__to_t_address__fromStack_reversed","nativeSrc":"450:233:5","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"550:9:5","nodeType":"YulTypedName","src":"550:9:5","type":""},{"name":"value0","nativeSrc":"561:6:5","nodeType":"YulTypedName","src":"561:6:5","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"572:4:5","nodeType":"YulTypedName","src":"572:4:5","type":""}],"src":"450:233:5"},{"body":{"nativeSrc":"758:216:5","nodeType":"YulBlock","src":"758:216:5","statements":[{"body":{"nativeSrc":"804:16:5","nodeType":"YulBlock","src":"804:16:5","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"813:1:5","nodeType":"YulLiteral","src":"813:1:5","type":"","value":"0"},{"kind":"number","nativeSrc":"816:1:5","nodeType":"YulLiteral","src":"816:1:5","type":"","value":"0"}],"functionName":{"name":"revert","nativeSrc":"806:6:5","nodeType":"YulIdentifier","src":"806:6:5"},"nativeSrc":"806:12:5","nodeType":"YulFunctionCall","src":"806:12:5"},"nativeSrc":"806:12:5","nodeType":"YulExpressionStatement","src":"806:12:5"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nativeSrc":"779:7:5","nodeType":"YulIdentifier","src":"779:7:5"},{"name":"headStart","nativeSrc":"788:9:5","nodeType":"YulIdentifier","src":"788:9:5"}],"functionName":{"name":"sub","nativeSrc":"775:3:5","nodeType":"YulIdentifier","src":"775:3:5"},"nativeSrc":"775:23:5","nodeType":"YulFunctionCall","src":"775:23:5"},{"kind":"number","nativeSrc":"800:2:5","nodeType":"YulLiteral","src":"800:2:5","type":"","value":"32"}],"functionName":{"name":"slt","nativeSrc":"771:3:5","nodeType":"YulIdentifier","src":"771:3:5"},"nativeSrc":"771:32:5","nodeType":"YulFunctionCall","src":"771:32:5"},"nativeSrc":"768:52:5","nodeType":"YulIf","src":"768:52:5"},{"nativeSrc":"829:36:5","nodeType":"YulVariableDeclaration","src":"829:36:5","value":{"arguments":[{"name":"headStart","nativeSrc":"855:9:5","nodeType":"YulIdentifier","src":"855:9:5"}],"functionName":{"name":"calldataload","nativeSrc":"842:12:5","nodeType":"YulIdentifier","src":"842:12:5"},"nativeSrc":"842:23:5","nodeType":"YulFunctionCall","src":"842:23:5"},"variables":[{"name":"value","nativeSrc":"833:5:5","nodeType":"YulTypedName","src":"833:5:5","type":""}]},{"body":{"nativeSrc":"928:16:5","nodeType":"YulBlock","src":"928:16:5","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"937:1:5","nodeType":"YulLiteral","src":"937:1:5","type":"","value":"0"},{"kind":"number","nativeSrc":"940:1:5","nodeType":"YulLiteral","src":"940:1:5","type":"","value":"0"}],"functionName":{"name":"revert","nativeSrc":"930:6:5","nodeType":"YulIdentifier","src":"930:6:5"},"nativeSrc":"930:12:5","nodeType":"YulFunctionCall","src":"930:12:5"},"nativeSrc":"930:12:5","nodeType":"YulExpressionStatement","src":"930:12:5"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nativeSrc":"887:5:5","nodeType":"YulIdentifier","src":"887:5:5"},{"arguments":[{"name":"value","nativeSrc":"898:5:5","nodeType":"YulIdentifier","src":"898:5:5"},{"arguments":[{"arguments":[{"kind":"number","nativeSrc":"913:3:5","nodeType":"YulLiteral","src":"913:3:5","type":"","value":"160"},{"kind":"number","nativeSrc":"918:1:5","nodeType":"YulLiteral","src":"918:1:5","type":"","value":"1"}],"functionName":{"name":"shl","nativeSrc":"909:3:5","nodeType":"YulIdentifier","src":"909:3:5"},"nativeSrc":"909:11:5","nodeType":"YulFunctionCall","src":"909:11:5"},{"kind":"number","nativeSrc":"922:1:5","nodeType":"YulLiteral","src":"922:1:5","type":"","value":"1"}],"functionName":{"name":"sub","nativeSrc":"905:3:5","nodeType":"YulIdentifier","src":"905:3:5"},"nativeSrc":"905:19:5","nodeType":"YulFunctionCall","src":"905:19:5"}],"functionName":{"name":"and","nativeSrc":"894:3:5","nodeType":"YulIdentifier","src":"894:3:5"},"nativeSrc":"894:31:5","nodeType":"YulFunctionCall","src":"894:31:5"}],"functionName":{"name":"eq","nativeSrc":"884:2:5","nodeType":"YulIdentifier","src":"884:2:5"},"nativeSrc":"884:42:5","nodeType":"YulFunctionCall","src":"884:42:5"}],"functionName":{"name":"iszero","nativeSrc":"877:6:5","nodeType":"YulIdentifier","src":"877:6:5"},"nativeSrc":"877:50:5","nodeType":"YulFunctionCall","src":"877:50:5"},"nativeSrc":"874:70:5","nodeType":"YulIf","src":"874:70:5"},{"nativeSrc":"953:15:5","nodeType":"YulAssignment","src":"953:15:5","value":{"name":"value","nativeSrc":"963:5:5","nodeType":"YulIdentifier","src":"963:5:5"},"variableNames":[{"name":"value0","nativeSrc":"953:6:5","nodeType":"YulIdentifier","src":"953:6:5"}]}]},"name":"abi_decode_tuple_t_address","nativeSrc":"688:286:5","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"724:9:5","nodeType":"YulTypedName","src":"724:9:5","type":""},{"name":"dataEnd","nativeSrc":"735:7:5","nodeType":"YulTypedName","src":"735:7:5","type":""}],"returnVariables":[{"name":"value0","nativeSrc":"747:6:5","nodeType":"YulTypedName","src":"747:6:5","type":""}],"src":"688:286:5"},{"body":{"nativeSrc":"1035:142:5","nodeType":"YulBlock","src":"1035:142:5","statements":[{"expression":{"arguments":[{"name":"pos","nativeSrc":"1052:3:5","nodeType":"YulIdentifier","src":"1052:3:5"},{"arguments":[{"arguments":[{"name":"value","nativeSrc":"1067:5:5","nodeType":"YulIdentifier","src":"1067:5:5"}],"functionName":{"name":"mload","nativeSrc":"1061:5:5","nodeType":"YulIdentifier","src":"1061:5:5"},"nativeSrc":"1061:12:5","nodeType":"YulFunctionCall","src":"1061:12:5"},{"kind":"number","nativeSrc":"1075:12:5","nodeType":"YulLiteral","src":"1075:12:5","type":"","value":"0xffffffffff"}],"functionName":{"name":"and","nativeSrc":"1057:3:5","nodeType":"YulIdentifier","src":"1057:3:5"},"nativeSrc":"1057:31:5","nodeType":"YulFunctionCall","src":"1057:31:5"}],"functionName":{"name":"mstore","nativeSrc":"1045:6:5","nodeType":"YulIdentifier","src":"1045:6:5"},"nativeSrc":"1045:44:5","nodeType":"YulFunctionCall","src":"1045:44:5"},"nativeSrc":"1045:44:5","nodeType":"YulExpressionStatement","src":"1045:44:5"},{"expression":{"arguments":[{"arguments":[{"name":"pos","nativeSrc":"1109:3:5","nodeType":"YulIdentifier","src":"1109:3:5"},{"kind":"number","nativeSrc":"1114:4:5","nodeType":"YulLiteral","src":"1114:4:5","type":"","value":"0x20"}],"functionName":{"name":"add","nativeSrc":"1105:3:5","nodeType":"YulIdentifier","src":"1105:3:5"},"nativeSrc":"1105:14:5","nodeType":"YulFunctionCall","src":"1105:14:5"},{"arguments":[{"arguments":[{"arguments":[{"name":"value","nativeSrc":"1135:5:5","nodeType":"YulIdentifier","src":"1135:5:5"},{"kind":"number","nativeSrc":"1142:4:5","nodeType":"YulLiteral","src":"1142:4:5","type":"","value":"0x20"}],"functionName":{"name":"add","nativeSrc":"1131:3:5","nodeType":"YulIdentifier","src":"1131:3:5"},"nativeSrc":"1131:16:5","nodeType":"YulFunctionCall","src":"1131:16:5"}],"functionName":{"name":"mload","nativeSrc":"1125:5:5","nodeType":"YulIdentifier","src":"1125:5:5"},"nativeSrc":"1125:23:5","nodeType":"YulFunctionCall","src":"1125:23:5"},{"arguments":[{"arguments":[{"kind":"number","nativeSrc":"1158:3:5","nodeType":"YulLiteral","src":"1158:3:5","type":"","value":"216"},{"kind":"number","nativeSrc":"1163:1:5","nodeType":"YulLiteral","src":"1163:1:5","type":"","value":"1"}],"functionName":{"name":"shl","nativeSrc":"1154:3:5","nodeType":"YulIdentifier","src":"1154:3:5"},"nativeSrc":"1154:11:5","nodeType":"YulFunctionCall","src":"1154:11:5"},{"kind":"number","nativeSrc":"1167:1:5","nodeType":"YulLiteral","src":"1167:1:5","type":"","value":"1"}],"functionName":{"name":"sub","nativeSrc":"1150:3:5","nodeType":"YulIdentifier","src":"1150:3:5"},"nativeSrc":"1150:19:5","nodeType":"YulFunctionCall","src":"1150:19:5"}],"functionName":{"name":"and","nativeSrc":"1121:3:5","nodeType":"YulIdentifier","src":"1121:3:5"},"nativeSrc":"1121:49:5","nodeType":"YulFunctionCall","src":"1121:49:5"}],"functionName":{"name":"mstore","nativeSrc":"1098:6:5","nodeType":"YulIdentifier","src":"1098:6:5"},"nativeSrc":"1098:73:5","nodeType":"YulFunctionCall","src":"1098:73:5"},"nativeSrc":"1098:73:5","nodeType":"YulExpressionStatement","src":"1098:73:5"}]},"name":"abi_encode_struct_CooldownData","nativeSrc":"979:198:5","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nativeSrc":"1019:5:5","nodeType":"YulTypedName","src":"1019:5:5","type":""},{"name":"pos","nativeSrc":"1026:3:5","nodeType":"YulTypedName","src":"1026:3:5","type":""}],"src":"979:198:5"},{"body":{"nativeSrc":"1335:992:5","nodeType":"YulBlock","src":"1335:992:5","statements":[{"nativeSrc":"1345:27:5","nodeType":"YulAssignment","src":"1345:27:5","value":{"arguments":[{"name":"headStart","nativeSrc":"1357:9:5","nodeType":"YulIdentifier","src":"1357:9:5"},{"kind":"number","nativeSrc":"1368:3:5","nodeType":"YulLiteral","src":"1368:3:5","type":"","value":"480"}],"functionName":{"name":"add","nativeSrc":"1353:3:5","nodeType":"YulIdentifier","src":"1353:3:5"},"nativeSrc":"1353:19:5","nodeType":"YulFunctionCall","src":"1353:19:5"},"variableNames":[{"name":"tail","nativeSrc":"1345:4:5","nodeType":"YulIdentifier","src":"1345:4:5"}]},{"expression":{"arguments":[{"name":"headStart","nativeSrc":"1388:9:5","nodeType":"YulIdentifier","src":"1388:9:5"},{"arguments":[{"name":"value0","nativeSrc":"1405:6:5","nodeType":"YulIdentifier","src":"1405:6:5"}],"functionName":{"name":"mload","nativeSrc":"1399:5:5","nodeType":"YulIdentifier","src":"1399:5:5"},"nativeSrc":"1399:13:5","nodeType":"YulFunctionCall","src":"1399:13:5"}],"functionName":{"name":"mstore","nativeSrc":"1381:6:5","nodeType":"YulIdentifier","src":"1381:6:5"},"nativeSrc":"1381:32:5","nodeType":"YulFunctionCall","src":"1381:32:5"},"nativeSrc":"1381:32:5","nodeType":"YulExpressionStatement","src":"1381:32:5"},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"1433:9:5","nodeType":"YulIdentifier","src":"1433:9:5"},{"kind":"number","nativeSrc":"1444:4:5","nodeType":"YulLiteral","src":"1444:4:5","type":"","value":"0x20"}],"functionName":{"name":"add","nativeSrc":"1429:3:5","nodeType":"YulIdentifier","src":"1429:3:5"},"nativeSrc":"1429:20:5","nodeType":"YulFunctionCall","src":"1429:20:5"},{"arguments":[{"arguments":[{"name":"value0","nativeSrc":"1461:6:5","nodeType":"YulIdentifier","src":"1461:6:5"},{"kind":"number","nativeSrc":"1469:4:5","nodeType":"YulLiteral","src":"1469:4:5","type":"","value":"0x20"}],"functionName":{"name":"add","nativeSrc":"1457:3:5","nodeType":"YulIdentifier","src":"1457:3:5"},"nativeSrc":"1457:17:5","nodeType":"YulFunctionCall","src":"1457:17:5"}],"functionName":{"name":"mload","nativeSrc":"1451:5:5","nodeType":"YulIdentifier","src":"1451:5:5"},"nativeSrc":"1451:24:5","nodeType":"YulFunctionCall","src":"1451:24:5"}],"functionName":{"name":"mstore","nativeSrc":"1422:6:5","nodeType":"YulIdentifier","src":"1422:6:5"},"nativeSrc":"1422:54:5","nodeType":"YulFunctionCall","src":"1422:54:5"},"nativeSrc":"1422:54:5","nodeType":"YulExpressionStatement","src":"1422:54:5"},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"1496:9:5","nodeType":"YulIdentifier","src":"1496:9:5"},{"kind":"number","nativeSrc":"1507:4:5","nodeType":"YulLiteral","src":"1507:4:5","type":"","value":"0x40"}],"functionName":{"name":"add","nativeSrc":"1492:3:5","nodeType":"YulIdentifier","src":"1492:3:5"},"nativeSrc":"1492:20:5","nodeType":"YulFunctionCall","src":"1492:20:5"},{"arguments":[{"arguments":[{"name":"value0","nativeSrc":"1524:6:5","nodeType":"YulIdentifier","src":"1524:6:5"},{"kind":"number","nativeSrc":"1532:4:5","nodeType":"YulLiteral","src":"1532:4:5","type":"","value":"0x40"}],"functionName":{"name":"add","nativeSrc":"1520:3:5","nodeType":"YulIdentifier","src":"1520:3:5"},"nativeSrc":"1520:17:5","nodeType":"YulFunctionCall","src":"1520:17:5"}],"functionName":{"name":"mload","nativeSrc":"1514:5:5","nodeType":"YulIdentifier","src":"1514:5:5"},"nativeSrc":"1514:24:5","nodeType":"YulFunctionCall","src":"1514:24:5"}],"functionName":{"name":"mstore","nativeSrc":"1485:6:5","nodeType":"YulIdentifier","src":"1485:6:5"},"nativeSrc":"1485:54:5","nodeType":"YulFunctionCall","src":"1485:54:5"},"nativeSrc":"1485:54:5","nodeType":"YulExpressionStatement","src":"1485:54:5"},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"1559:9:5","nodeType":"YulIdentifier","src":"1559:9:5"},{"kind":"number","nativeSrc":"1570:4:5","nodeType":"YulLiteral","src":"1570:4:5","type":"","value":"0x60"}],"functionName":{"name":"add","nativeSrc":"1555:3:5","nodeType":"YulIdentifier","src":"1555:3:5"},"nativeSrc":"1555:20:5","nodeType":"YulFunctionCall","src":"1555:20:5"},{"arguments":[{"arguments":[{"name":"value0","nativeSrc":"1587:6:5","nodeType":"YulIdentifier","src":"1587:6:5"},{"kind":"number","nativeSrc":"1595:4:5","nodeType":"YulLiteral","src":"1595:4:5","type":"","value":"0x60"}],"functionName":{"name":"add","nativeSrc":"1583:3:5","nodeType":"YulIdentifier","src":"1583:3:5"},"nativeSrc":"1583:17:5","nodeType":"YulFunctionCall","src":"1583:17:5"}],"functionName":{"name":"mload","nativeSrc":"1577:5:5","nodeType":"YulIdentifier","src":"1577:5:5"},"nativeSrc":"1577:24:5","nodeType":"YulFunctionCall","src":"1577:24:5"}],"functionName":{"name":"mstore","nativeSrc":"1548:6:5","nodeType":"YulIdentifier","src":"1548:6:5"},"nativeSrc":"1548:54:5","nodeType":"YulFunctionCall","src":"1548:54:5"},"nativeSrc":"1548:54:5","nodeType":"YulExpressionStatement","src":"1548:54:5"},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"1622:9:5","nodeType":"YulIdentifier","src":"1622:9:5"},{"kind":"number","nativeSrc":"1633:4:5","nodeType":"YulLiteral","src":"1633:4:5","type":"","value":"0x80"}],"functionName":{"name":"add","nativeSrc":"1618:3:5","nodeType":"YulIdentifier","src":"1618:3:5"},"nativeSrc":"1618:20:5","nodeType":"YulFunctionCall","src":"1618:20:5"},{"arguments":[{"arguments":[{"name":"value0","nativeSrc":"1650:6:5","nodeType":"YulIdentifier","src":"1650:6:5"},{"kind":"number","nativeSrc":"1658:4:5","nodeType":"YulLiteral","src":"1658:4:5","type":"","value":"0x80"}],"functionName":{"name":"add","nativeSrc":"1646:3:5","nodeType":"YulIdentifier","src":"1646:3:5"},"nativeSrc":"1646:17:5","nodeType":"YulFunctionCall","src":"1646:17:5"}],"functionName":{"name":"mload","nativeSrc":"1640:5:5","nodeType":"YulIdentifier","src":"1640:5:5"},"nativeSrc":"1640:24:5","nodeType":"YulFunctionCall","src":"1640:24:5"}],"functionName":{"name":"mstore","nativeSrc":"1611:6:5","nodeType":"YulIdentifier","src":"1611:6:5"},"nativeSrc":"1611:54:5","nodeType":"YulFunctionCall","src":"1611:54:5"},"nativeSrc":"1611:54:5","nodeType":"YulExpressionStatement","src":"1611:54:5"},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"1685:9:5","nodeType":"YulIdentifier","src":"1685:9:5"},{"kind":"number","nativeSrc":"1696:4:5","nodeType":"YulLiteral","src":"1696:4:5","type":"","value":"0xa0"}],"functionName":{"name":"add","nativeSrc":"1681:3:5","nodeType":"YulIdentifier","src":"1681:3:5"},"nativeSrc":"1681:20:5","nodeType":"YulFunctionCall","src":"1681:20:5"},{"arguments":[{"arguments":[{"name":"value0","nativeSrc":"1713:6:5","nodeType":"YulIdentifier","src":"1713:6:5"},{"kind":"number","nativeSrc":"1721:4:5","nodeType":"YulLiteral","src":"1721:4:5","type":"","value":"0xa0"}],"functionName":{"name":"add","nativeSrc":"1709:3:5","nodeType":"YulIdentifier","src":"1709:3:5"},"nativeSrc":"1709:17:5","nodeType":"YulFunctionCall","src":"1709:17:5"}],"functionName":{"name":"mload","nativeSrc":"1703:5:5","nodeType":"YulIdentifier","src":"1703:5:5"},"nativeSrc":"1703:24:5","nodeType":"YulFunctionCall","src":"1703:24:5"}],"functionName":{"name":"mstore","nativeSrc":"1674:6:5","nodeType":"YulIdentifier","src":"1674:6:5"},"nativeSrc":"1674:54:5","nodeType":"YulFunctionCall","src":"1674:54:5"},"nativeSrc":"1674:54:5","nodeType":"YulExpressionStatement","src":"1674:54:5"},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"1748:9:5","nodeType":"YulIdentifier","src":"1748:9:5"},{"kind":"number","nativeSrc":"1759:4:5","nodeType":"YulLiteral","src":"1759:4:5","type":"","value":"0xc0"}],"functionName":{"name":"add","nativeSrc":"1744:3:5","nodeType":"YulIdentifier","src":"1744:3:5"},"nativeSrc":"1744:20:5","nodeType":"YulFunctionCall","src":"1744:20:5"},{"arguments":[{"arguments":[{"name":"value0","nativeSrc":"1776:6:5","nodeType":"YulIdentifier","src":"1776:6:5"},{"kind":"number","nativeSrc":"1784:4:5","nodeType":"YulLiteral","src":"1784:4:5","type":"","value":"0xc0"}],"functionName":{"name":"add","nativeSrc":"1772:3:5","nodeType":"YulIdentifier","src":"1772:3:5"},"nativeSrc":"1772:17:5","nodeType":"YulFunctionCall","src":"1772:17:5"}],"functionName":{"name":"mload","nativeSrc":"1766:5:5","nodeType":"YulIdentifier","src":"1766:5:5"},"nativeSrc":"1766:24:5","nodeType":"YulFunctionCall","src":"1766:24:5"}],"functionName":{"name":"mstore","nativeSrc":"1737:6:5","nodeType":"YulIdentifier","src":"1737:6:5"},"nativeSrc":"1737:54:5","nodeType":"YulFunctionCall","src":"1737:54:5"},"nativeSrc":"1737:54:5","nodeType":"YulExpressionStatement","src":"1737:54:5"},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"1811:9:5","nodeType":"YulIdentifier","src":"1811:9:5"},{"kind":"number","nativeSrc":"1822:4:5","nodeType":"YulLiteral","src":"1822:4:5","type":"","value":"0xe0"}],"functionName":{"name":"add","nativeSrc":"1807:3:5","nodeType":"YulIdentifier","src":"1807:3:5"},"nativeSrc":"1807:20:5","nodeType":"YulFunctionCall","src":"1807:20:5"},{"arguments":[{"arguments":[{"name":"value0","nativeSrc":"1839:6:5","nodeType":"YulIdentifier","src":"1839:6:5"},{"kind":"number","nativeSrc":"1847:4:5","nodeType":"YulLiteral","src":"1847:4:5","type":"","value":"0xe0"}],"functionName":{"name":"add","nativeSrc":"1835:3:5","nodeType":"YulIdentifier","src":"1835:3:5"},"nativeSrc":"1835:17:5","nodeType":"YulFunctionCall","src":"1835:17:5"}],"functionName":{"name":"mload","nativeSrc":"1829:5:5","nodeType":"YulIdentifier","src":"1829:5:5"},"nativeSrc":"1829:24:5","nodeType":"YulFunctionCall","src":"1829:24:5"}],"functionName":{"name":"mstore","nativeSrc":"1800:6:5","nodeType":"YulIdentifier","src":"1800:6:5"},"nativeSrc":"1800:54:5","nodeType":"YulFunctionCall","src":"1800:54:5"},"nativeSrc":"1800:54:5","nodeType":"YulExpressionStatement","src":"1800:54:5"},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"1874:9:5","nodeType":"YulIdentifier","src":"1874:9:5"},{"kind":"number","nativeSrc":"1885:6:5","nodeType":"YulLiteral","src":"1885:6:5","type":"","value":"0x0100"}],"functionName":{"name":"add","nativeSrc":"1870:3:5","nodeType":"YulIdentifier","src":"1870:3:5"},"nativeSrc":"1870:22:5","nodeType":"YulFunctionCall","src":"1870:22:5"},{"arguments":[{"arguments":[{"name":"value0","nativeSrc":"1904:6:5","nodeType":"YulIdentifier","src":"1904:6:5"},{"kind":"number","nativeSrc":"1912:6:5","nodeType":"YulLiteral","src":"1912:6:5","type":"","value":"0x0100"}],"functionName":{"name":"add","nativeSrc":"1900:3:5","nodeType":"YulIdentifier","src":"1900:3:5"},"nativeSrc":"1900:19:5","nodeType":"YulFunctionCall","src":"1900:19:5"}],"functionName":{"name":"mload","nativeSrc":"1894:5:5","nodeType":"YulIdentifier","src":"1894:5:5"},"nativeSrc":"1894:26:5","nodeType":"YulFunctionCall","src":"1894:26:5"}],"functionName":{"name":"mstore","nativeSrc":"1863:6:5","nodeType":"YulIdentifier","src":"1863:6:5"},"nativeSrc":"1863:58:5","nodeType":"YulFunctionCall","src":"1863:58:5"},"nativeSrc":"1863:58:5","nodeType":"YulExpressionStatement","src":"1863:58:5"},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"1941:9:5","nodeType":"YulIdentifier","src":"1941:9:5"},{"kind":"number","nativeSrc":"1952:6:5","nodeType":"YulLiteral","src":"1952:6:5","type":"","value":"0x0120"}],"functionName":{"name":"add","nativeSrc":"1937:3:5","nodeType":"YulIdentifier","src":"1937:3:5"},"nativeSrc":"1937:22:5","nodeType":"YulFunctionCall","src":"1937:22:5"},{"arguments":[{"arguments":[{"name":"value0","nativeSrc":"1971:6:5","nodeType":"YulIdentifier","src":"1971:6:5"},{"kind":"number","nativeSrc":"1979:6:5","nodeType":"YulLiteral","src":"1979:6:5","type":"","value":"0x0120"}],"functionName":{"name":"add","nativeSrc":"1967:3:5","nodeType":"YulIdentifier","src":"1967:3:5"},"nativeSrc":"1967:19:5","nodeType":"YulFunctionCall","src":"1967:19:5"}],"functionName":{"name":"mload","nativeSrc":"1961:5:5","nodeType":"YulIdentifier","src":"1961:5:5"},"nativeSrc":"1961:26:5","nodeType":"YulFunctionCall","src":"1961:26:5"}],"functionName":{"name":"mstore","nativeSrc":"1930:6:5","nodeType":"YulIdentifier","src":"1930:6:5"},"nativeSrc":"1930:58:5","nodeType":"YulFunctionCall","src":"1930:58:5"},"nativeSrc":"1930:58:5","nodeType":"YulExpressionStatement","src":"1930:58:5"},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"2008:9:5","nodeType":"YulIdentifier","src":"2008:9:5"},{"kind":"number","nativeSrc":"2019:6:5","nodeType":"YulLiteral","src":"2019:6:5","type":"","value":"0x0140"}],"functionName":{"name":"add","nativeSrc":"2004:3:5","nodeType":"YulIdentifier","src":"2004:3:5"},"nativeSrc":"2004:22:5","nodeType":"YulFunctionCall","src":"2004:22:5"},{"arguments":[{"arguments":[{"name":"value0","nativeSrc":"2038:6:5","nodeType":"YulIdentifier","src":"2038:6:5"},{"kind":"number","nativeSrc":"2046:6:5","nodeType":"YulLiteral","src":"2046:6:5","type":"","value":"0x0140"}],"functionName":{"name":"add","nativeSrc":"2034:3:5","nodeType":"YulIdentifier","src":"2034:3:5"},"nativeSrc":"2034:19:5","nodeType":"YulFunctionCall","src":"2034:19:5"}],"functionName":{"name":"mload","nativeSrc":"2028:5:5","nodeType":"YulIdentifier","src":"2028:5:5"},"nativeSrc":"2028:26:5","nodeType":"YulFunctionCall","src":"2028:26:5"}],"functionName":{"name":"mstore","nativeSrc":"1997:6:5","nodeType":"YulIdentifier","src":"1997:6:5"},"nativeSrc":"1997:58:5","nodeType":"YulFunctionCall","src":"1997:58:5"},"nativeSrc":"1997:58:5","nodeType":"YulExpressionStatement","src":"1997:58:5"},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"2075:9:5","nodeType":"YulIdentifier","src":"2075:9:5"},{"kind":"number","nativeSrc":"2086:6:5","nodeType":"YulLiteral","src":"2086:6:5","type":"","value":"0x0160"}],"functionName":{"name":"add","nativeSrc":"2071:3:5","nodeType":"YulIdentifier","src":"2071:3:5"},"nativeSrc":"2071:22:5","nodeType":"YulFunctionCall","src":"2071:22:5"},{"arguments":[{"arguments":[{"name":"value0","nativeSrc":"2105:6:5","nodeType":"YulIdentifier","src":"2105:6:5"},{"kind":"number","nativeSrc":"2113:6:5","nodeType":"YulLiteral","src":"2113:6:5","type":"","value":"0x0160"}],"functionName":{"name":"add","nativeSrc":"2101:3:5","nodeType":"YulIdentifier","src":"2101:3:5"},"nativeSrc":"2101:19:5","nodeType":"YulFunctionCall","src":"2101:19:5"}],"functionName":{"name":"mload","nativeSrc":"2095:5:5","nodeType":"YulIdentifier","src":"2095:5:5"},"nativeSrc":"2095:26:5","nodeType":"YulFunctionCall","src":"2095:26:5"}],"functionName":{"name":"mstore","nativeSrc":"2064:6:5","nodeType":"YulIdentifier","src":"2064:6:5"},"nativeSrc":"2064:58:5","nodeType":"YulFunctionCall","src":"2064:58:5"},"nativeSrc":"2064:58:5","nodeType":"YulExpressionStatement","src":"2064:58:5"},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"2142:9:5","nodeType":"YulIdentifier","src":"2142:9:5"},{"kind":"number","nativeSrc":"2153:6:5","nodeType":"YulLiteral","src":"2153:6:5","type":"","value":"0x0180"}],"functionName":{"name":"add","nativeSrc":"2138:3:5","nodeType":"YulIdentifier","src":"2138:3:5"},"nativeSrc":"2138:22:5","nodeType":"YulFunctionCall","src":"2138:22:5"},{"arguments":[{"arguments":[{"name":"value0","nativeSrc":"2172:6:5","nodeType":"YulIdentifier","src":"2172:6:5"},{"kind":"number","nativeSrc":"2180:6:5","nodeType":"YulLiteral","src":"2180:6:5","type":"","value":"0x0180"}],"functionName":{"name":"add","nativeSrc":"2168:3:5","nodeType":"YulIdentifier","src":"2168:3:5"},"nativeSrc":"2168:19:5","nodeType":"YulFunctionCall","src":"2168:19:5"}],"functionName":{"name":"mload","nativeSrc":"2162:5:5","nodeType":"YulIdentifier","src":"2162:5:5"},"nativeSrc":"2162:26:5","nodeType":"YulFunctionCall","src":"2162:26:5"}],"functionName":{"name":"mstore","nativeSrc":"2131:6:5","nodeType":"YulIdentifier","src":"2131:6:5"},"nativeSrc":"2131:58:5","nodeType":"YulFunctionCall","src":"2131:58:5"},"nativeSrc":"2131:58:5","nodeType":"YulExpressionStatement","src":"2131:58:5"},{"nativeSrc":"2198:46:5","nodeType":"YulVariableDeclaration","src":"2198:46:5","value":{"arguments":[{"arguments":[{"name":"value0","nativeSrc":"2228:6:5","nodeType":"YulIdentifier","src":"2228:6:5"},{"kind":"number","nativeSrc":"2236:6:5","nodeType":"YulLiteral","src":"2236:6:5","type":"","value":"0x01a0"}],"functionName":{"name":"add","nativeSrc":"2224:3:5","nodeType":"YulIdentifier","src":"2224:3:5"},"nativeSrc":"2224:19:5","nodeType":"YulFunctionCall","src":"2224:19:5"}],"functionName":{"name":"mload","nativeSrc":"2218:5:5","nodeType":"YulIdentifier","src":"2218:5:5"},"nativeSrc":"2218:26:5","nodeType":"YulFunctionCall","src":"2218:26:5"},"variables":[{"name":"memberValue0","nativeSrc":"2202:12:5","nodeType":"YulTypedName","src":"2202:12:5","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nativeSrc":"2284:12:5","nodeType":"YulIdentifier","src":"2284:12:5"},{"arguments":[{"name":"headStart","nativeSrc":"2302:9:5","nodeType":"YulIdentifier","src":"2302:9:5"},{"kind":"number","nativeSrc":"2313:6:5","nodeType":"YulLiteral","src":"2313:6:5","type":"","value":"0x01a0"}],"functionName":{"name":"add","nativeSrc":"2298:3:5","nodeType":"YulIdentifier","src":"2298:3:5"},"nativeSrc":"2298:22:5","nodeType":"YulFunctionCall","src":"2298:22:5"}],"functionName":{"name":"abi_encode_struct_CooldownData","nativeSrc":"2253:30:5","nodeType":"YulIdentifier","src":"2253:30:5"},"nativeSrc":"2253:68:5","nodeType":"YulFunctionCall","src":"2253:68:5"},"nativeSrc":"2253:68:5","nodeType":"YulExpressionStatement","src":"2253:68:5"}]},"name":"abi_encode_tuple_t_struct$_StakeData_$865_memory_ptr__to_t_struct$_StakeData_$865_memory_ptr__fromStack_reversed","nativeSrc":"1182:1145:5","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"1304:9:5","nodeType":"YulTypedName","src":"1304:9:5","type":""},{"name":"value0","nativeSrc":"1315:6:5","nodeType":"YulTypedName","src":"1315:6:5","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"1326:4:5","nodeType":"YulTypedName","src":"1326:4:5","type":""}],"src":"1182:1145:5"},{"body":{"nativeSrc":"2413:149:5","nodeType":"YulBlock","src":"2413:149:5","statements":[{"body":{"nativeSrc":"2459:16:5","nodeType":"YulBlock","src":"2459:16:5","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"2468:1:5","nodeType":"YulLiteral","src":"2468:1:5","type":"","value":"0"},{"kind":"number","nativeSrc":"2471:1:5","nodeType":"YulLiteral","src":"2471:1:5","type":"","value":"0"}],"functionName":{"name":"revert","nativeSrc":"2461:6:5","nodeType":"YulIdentifier","src":"2461:6:5"},"nativeSrc":"2461:12:5","nodeType":"YulFunctionCall","src":"2461:12:5"},"nativeSrc":"2461:12:5","nodeType":"YulExpressionStatement","src":"2461:12:5"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nativeSrc":"2434:7:5","nodeType":"YulIdentifier","src":"2434:7:5"},{"name":"headStart","nativeSrc":"2443:9:5","nodeType":"YulIdentifier","src":"2443:9:5"}],"functionName":{"name":"sub","nativeSrc":"2430:3:5","nodeType":"YulIdentifier","src":"2430:3:5"},"nativeSrc":"2430:23:5","nodeType":"YulFunctionCall","src":"2430:23:5"},{"kind":"number","nativeSrc":"2455:2:5","nodeType":"YulLiteral","src":"2455:2:5","type":"","value":"32"}],"functionName":{"name":"slt","nativeSrc":"2426:3:5","nodeType":"YulIdentifier","src":"2426:3:5"},"nativeSrc":"2426:32:5","nodeType":"YulFunctionCall","src":"2426:32:5"},"nativeSrc":"2423:52:5","nodeType":"YulIf","src":"2423:52:5"},{"nativeSrc":"2484:14:5","nodeType":"YulVariableDeclaration","src":"2484:14:5","value":{"kind":"number","nativeSrc":"2497:1:5","nodeType":"YulLiteral","src":"2497:1:5","type":"","value":"0"},"variables":[{"name":"value","nativeSrc":"2488:5:5","nodeType":"YulTypedName","src":"2488:5:5","type":""}]},{"nativeSrc":"2507:25:5","nodeType":"YulAssignment","src":"2507:25:5","value":{"arguments":[{"name":"headStart","nativeSrc":"2522:9:5","nodeType":"YulIdentifier","src":"2522:9:5"}],"functionName":{"name":"mload","nativeSrc":"2516:5:5","nodeType":"YulIdentifier","src":"2516:5:5"},"nativeSrc":"2516:16:5","nodeType":"YulFunctionCall","src":"2516:16:5"},"variableNames":[{"name":"value","nativeSrc":"2507:5:5","nodeType":"YulIdentifier","src":"2507:5:5"}]},{"nativeSrc":"2541:15:5","nodeType":"YulAssignment","src":"2541:15:5","value":{"name":"value","nativeSrc":"2551:5:5","nodeType":"YulIdentifier","src":"2551:5:5"},"variableNames":[{"name":"value0","nativeSrc":"2541:6:5","nodeType":"YulIdentifier","src":"2541:6:5"}]}]},"name":"abi_decode_tuple_t_uint256_fromMemory","nativeSrc":"2332:230:5","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"2379:9:5","nodeType":"YulTypedName","src":"2379:9:5","type":""},{"name":"dataEnd","nativeSrc":"2390:7:5","nodeType":"YulTypedName","src":"2390:7:5","type":""}],"returnVariables":[{"name":"value0","nativeSrc":"2402:6:5","nodeType":"YulTypedName","src":"2402:6:5","type":""}],"src":"2332:230:5"},{"body":{"nativeSrc":"2627:117:5","nodeType":"YulBlock","src":"2627:117:5","statements":[{"nativeSrc":"2637:22:5","nodeType":"YulAssignment","src":"2637:22:5","value":{"arguments":[{"name":"offset","nativeSrc":"2652:6:5","nodeType":"YulIdentifier","src":"2652:6:5"}],"functionName":{"name":"mload","nativeSrc":"2646:5:5","nodeType":"YulIdentifier","src":"2646:5:5"},"nativeSrc":"2646:13:5","nodeType":"YulFunctionCall","src":"2646:13:5"},"variableNames":[{"name":"value","nativeSrc":"2637:5:5","nodeType":"YulIdentifier","src":"2637:5:5"}]},{"body":{"nativeSrc":"2722:16:5","nodeType":"YulBlock","src":"2722:16:5","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"2731:1:5","nodeType":"YulLiteral","src":"2731:1:5","type":"","value":"0"},{"kind":"number","nativeSrc":"2734:1:5","nodeType":"YulLiteral","src":"2734:1:5","type":"","value":"0"}],"functionName":{"name":"revert","nativeSrc":"2724:6:5","nodeType":"YulIdentifier","src":"2724:6:5"},"nativeSrc":"2724:12:5","nodeType":"YulFunctionCall","src":"2724:12:5"},"nativeSrc":"2724:12:5","nodeType":"YulExpressionStatement","src":"2724:12:5"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nativeSrc":"2681:5:5","nodeType":"YulIdentifier","src":"2681:5:5"},{"arguments":[{"name":"value","nativeSrc":"2692:5:5","nodeType":"YulIdentifier","src":"2692:5:5"},{"arguments":[{"arguments":[{"kind":"number","nativeSrc":"2707:3:5","nodeType":"YulLiteral","src":"2707:3:5","type":"","value":"216"},{"kind":"number","nativeSrc":"2712:1:5","nodeType":"YulLiteral","src":"2712:1:5","type":"","value":"1"}],"functionName":{"name":"shl","nativeSrc":"2703:3:5","nodeType":"YulIdentifier","src":"2703:3:5"},"nativeSrc":"2703:11:5","nodeType":"YulFunctionCall","src":"2703:11:5"},{"kind":"number","nativeSrc":"2716:1:5","nodeType":"YulLiteral","src":"2716:1:5","type":"","value":"1"}],"functionName":{"name":"sub","nativeSrc":"2699:3:5","nodeType":"YulIdentifier","src":"2699:3:5"},"nativeSrc":"2699:19:5","nodeType":"YulFunctionCall","src":"2699:19:5"}],"functionName":{"name":"and","nativeSrc":"2688:3:5","nodeType":"YulIdentifier","src":"2688:3:5"},"nativeSrc":"2688:31:5","nodeType":"YulFunctionCall","src":"2688:31:5"}],"functionName":{"name":"eq","nativeSrc":"2678:2:5","nodeType":"YulIdentifier","src":"2678:2:5"},"nativeSrc":"2678:42:5","nodeType":"YulFunctionCall","src":"2678:42:5"}],"functionName":{"name":"iszero","nativeSrc":"2671:6:5","nodeType":"YulIdentifier","src":"2671:6:5"},"nativeSrc":"2671:50:5","nodeType":"YulFunctionCall","src":"2671:50:5"},"nativeSrc":"2668:70:5","nodeType":"YulIf","src":"2668:70:5"}]},"name":"abi_decode_uint216_fromMemory","nativeSrc":"2567:177:5","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nativeSrc":"2606:6:5","nodeType":"YulTypedName","src":"2606:6:5","type":""}],"returnVariables":[{"name":"value","nativeSrc":"2617:5:5","nodeType":"YulTypedName","src":"2617:5:5","type":""}],"src":"2567:177:5"},{"body":{"nativeSrc":"2830:127:5","nodeType":"YulBlock","src":"2830:127:5","statements":[{"body":{"nativeSrc":"2876:16:5","nodeType":"YulBlock","src":"2876:16:5","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"2885:1:5","nodeType":"YulLiteral","src":"2885:1:5","type":"","value":"0"},{"kind":"number","nativeSrc":"2888:1:5","nodeType":"YulLiteral","src":"2888:1:5","type":"","value":"0"}],"functionName":{"name":"revert","nativeSrc":"2878:6:5","nodeType":"YulIdentifier","src":"2878:6:5"},"nativeSrc":"2878:12:5","nodeType":"YulFunctionCall","src":"2878:12:5"},"nativeSrc":"2878:12:5","nodeType":"YulExpressionStatement","src":"2878:12:5"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nativeSrc":"2851:7:5","nodeType":"YulIdentifier","src":"2851:7:5"},{"name":"headStart","nativeSrc":"2860:9:5","nodeType":"YulIdentifier","src":"2860:9:5"}],"functionName":{"name":"sub","nativeSrc":"2847:3:5","nodeType":"YulIdentifier","src":"2847:3:5"},"nativeSrc":"2847:23:5","nodeType":"YulFunctionCall","src":"2847:23:5"},{"kind":"number","nativeSrc":"2872:2:5","nodeType":"YulLiteral","src":"2872:2:5","type":"","value":"32"}],"functionName":{"name":"slt","nativeSrc":"2843:3:5","nodeType":"YulIdentifier","src":"2843:3:5"},"nativeSrc":"2843:32:5","nodeType":"YulFunctionCall","src":"2843:32:5"},"nativeSrc":"2840:52:5","nodeType":"YulIf","src":"2840:52:5"},{"nativeSrc":"2901:50:5","nodeType":"YulAssignment","src":"2901:50:5","value":{"arguments":[{"name":"headStart","nativeSrc":"2941:9:5","nodeType":"YulIdentifier","src":"2941:9:5"}],"functionName":{"name":"abi_decode_uint216_fromMemory","nativeSrc":"2911:29:5","nodeType":"YulIdentifier","src":"2911:29:5"},"nativeSrc":"2911:40:5","nodeType":"YulFunctionCall","src":"2911:40:5"},"variableNames":[{"name":"value0","nativeSrc":"2901:6:5","nodeType":"YulIdentifier","src":"2901:6:5"}]}]},"name":"abi_decode_tuple_t_uint216_fromMemory","nativeSrc":"2749:208:5","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"2796:9:5","nodeType":"YulTypedName","src":"2796:9:5","type":""},{"name":"dataEnd","nativeSrc":"2807:7:5","nodeType":"YulTypedName","src":"2807:7:5","type":""}],"returnVariables":[{"name":"value0","nativeSrc":"2819:6:5","nodeType":"YulTypedName","src":"2819:6:5","type":""}],"src":"2749:208:5"},{"body":{"nativeSrc":"3059:270:5","nodeType":"YulBlock","src":"3059:270:5","statements":[{"body":{"nativeSrc":"3105:16:5","nodeType":"YulBlock","src":"3105:16:5","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"3114:1:5","nodeType":"YulLiteral","src":"3114:1:5","type":"","value":"0"},{"kind":"number","nativeSrc":"3117:1:5","nodeType":"YulLiteral","src":"3117:1:5","type":"","value":"0"}],"functionName":{"name":"revert","nativeSrc":"3107:6:5","nodeType":"YulIdentifier","src":"3107:6:5"},"nativeSrc":"3107:12:5","nodeType":"YulFunctionCall","src":"3107:12:5"},"nativeSrc":"3107:12:5","nodeType":"YulExpressionStatement","src":"3107:12:5"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nativeSrc":"3080:7:5","nodeType":"YulIdentifier","src":"3080:7:5"},{"name":"headStart","nativeSrc":"3089:9:5","nodeType":"YulIdentifier","src":"3089:9:5"}],"functionName":{"name":"sub","nativeSrc":"3076:3:5","nodeType":"YulIdentifier","src":"3076:3:5"},"nativeSrc":"3076:23:5","nodeType":"YulFunctionCall","src":"3076:23:5"},{"kind":"number","nativeSrc":"3101:2:5","nodeType":"YulLiteral","src":"3101:2:5","type":"","value":"64"}],"functionName":{"name":"slt","nativeSrc":"3072:3:5","nodeType":"YulIdentifier","src":"3072:3:5"},"nativeSrc":"3072:32:5","nodeType":"YulFunctionCall","src":"3072:32:5"},"nativeSrc":"3069:52:5","nodeType":"YulIf","src":"3069:52:5"},{"nativeSrc":"3130:29:5","nodeType":"YulVariableDeclaration","src":"3130:29:5","value":{"arguments":[{"name":"headStart","nativeSrc":"3149:9:5","nodeType":"YulIdentifier","src":"3149:9:5"}],"functionName":{"name":"mload","nativeSrc":"3143:5:5","nodeType":"YulIdentifier","src":"3143:5:5"},"nativeSrc":"3143:16:5","nodeType":"YulFunctionCall","src":"3143:16:5"},"variables":[{"name":"value","nativeSrc":"3134:5:5","nodeType":"YulTypedName","src":"3134:5:5","type":""}]},{"body":{"nativeSrc":"3215:16:5","nodeType":"YulBlock","src":"3215:16:5","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"3224:1:5","nodeType":"YulLiteral","src":"3224:1:5","type":"","value":"0"},{"kind":"number","nativeSrc":"3227:1:5","nodeType":"YulLiteral","src":"3227:1:5","type":"","value":"0"}],"functionName":{"name":"revert","nativeSrc":"3217:6:5","nodeType":"YulIdentifier","src":"3217:6:5"},"nativeSrc":"3217:12:5","nodeType":"YulFunctionCall","src":"3217:12:5"},"nativeSrc":"3217:12:5","nodeType":"YulExpressionStatement","src":"3217:12:5"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nativeSrc":"3181:5:5","nodeType":"YulIdentifier","src":"3181:5:5"},{"arguments":[{"name":"value","nativeSrc":"3192:5:5","nodeType":"YulIdentifier","src":"3192:5:5"},{"kind":"number","nativeSrc":"3199:12:5","nodeType":"YulLiteral","src":"3199:12:5","type":"","value":"0xffffffffff"}],"functionName":{"name":"and","nativeSrc":"3188:3:5","nodeType":"YulIdentifier","src":"3188:3:5"},"nativeSrc":"3188:24:5","nodeType":"YulFunctionCall","src":"3188:24:5"}],"functionName":{"name":"eq","nativeSrc":"3178:2:5","nodeType":"YulIdentifier","src":"3178:2:5"},"nativeSrc":"3178:35:5","nodeType":"YulFunctionCall","src":"3178:35:5"}],"functionName":{"name":"iszero","nativeSrc":"3171:6:5","nodeType":"YulIdentifier","src":"3171:6:5"},"nativeSrc":"3171:43:5","nodeType":"YulFunctionCall","src":"3171:43:5"},"nativeSrc":"3168:63:5","nodeType":"YulIf","src":"3168:63:5"},{"nativeSrc":"3240:15:5","nodeType":"YulAssignment","src":"3240:15:5","value":{"name":"value","nativeSrc":"3250:5:5","nodeType":"YulIdentifier","src":"3250:5:5"},"variableNames":[{"name":"value0","nativeSrc":"3240:6:5","nodeType":"YulIdentifier","src":"3240:6:5"}]},{"nativeSrc":"3264:59:5","nodeType":"YulAssignment","src":"3264:59:5","value":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"3308:9:5","nodeType":"YulIdentifier","src":"3308:9:5"},{"kind":"number","nativeSrc":"3319:2:5","nodeType":"YulLiteral","src":"3319:2:5","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"3304:3:5","nodeType":"YulIdentifier","src":"3304:3:5"},"nativeSrc":"3304:18:5","nodeType":"YulFunctionCall","src":"3304:18:5"}],"functionName":{"name":"abi_decode_uint216_fromMemory","nativeSrc":"3274:29:5","nodeType":"YulIdentifier","src":"3274:29:5"},"nativeSrc":"3274:49:5","nodeType":"YulFunctionCall","src":"3274:49:5"},"variableNames":[{"name":"value1","nativeSrc":"3264:6:5","nodeType":"YulIdentifier","src":"3264:6:5"}]}]},"name":"abi_decode_tuple_t_uint40t_uint216_fromMemory","nativeSrc":"2962:367:5","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"3017:9:5","nodeType":"YulTypedName","src":"3017:9:5","type":""},{"name":"dataEnd","nativeSrc":"3028:7:5","nodeType":"YulTypedName","src":"3028:7:5","type":""}],"returnVariables":[{"name":"value0","nativeSrc":"3040:6:5","nodeType":"YulTypedName","src":"3040:6:5","type":""},{"name":"value1","nativeSrc":"3048:6:5","nodeType":"YulTypedName","src":"3048:6:5","type":""}],"src":"2962:367:5"},{"body":{"nativeSrc":"3394:132:5","nodeType":"YulBlock","src":"3394:132:5","statements":[{"nativeSrc":"3404:22:5","nodeType":"YulAssignment","src":"3404:22:5","value":{"arguments":[{"name":"offset","nativeSrc":"3419:6:5","nodeType":"YulIdentifier","src":"3419:6:5"}],"functionName":{"name":"mload","nativeSrc":"3413:5:5","nodeType":"YulIdentifier","src":"3413:5:5"},"nativeSrc":"3413:13:5","nodeType":"YulFunctionCall","src":"3413:13:5"},"variableNames":[{"name":"value","nativeSrc":"3404:5:5","nodeType":"YulIdentifier","src":"3404:5:5"}]},{"body":{"nativeSrc":"3504:16:5","nodeType":"YulBlock","src":"3504:16:5","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"3513:1:5","nodeType":"YulLiteral","src":"3513:1:5","type":"","value":"0"},{"kind":"number","nativeSrc":"3516:1:5","nodeType":"YulLiteral","src":"3516:1:5","type":"","value":"0"}],"functionName":{"name":"revert","nativeSrc":"3506:6:5","nodeType":"YulIdentifier","src":"3506:6:5"},"nativeSrc":"3506:12:5","nodeType":"YulFunctionCall","src":"3506:12:5"},"nativeSrc":"3506:12:5","nodeType":"YulExpressionStatement","src":"3506:12:5"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nativeSrc":"3448:5:5","nodeType":"YulIdentifier","src":"3448:5:5"},{"arguments":[{"name":"value","nativeSrc":"3459:5:5","nodeType":"YulIdentifier","src":"3459:5:5"},{"kind":"number","nativeSrc":"3466:34:5","nodeType":"YulLiteral","src":"3466:34:5","type":"","value":"0xffffffffffffffffffffffffffffffff"}],"functionName":{"name":"and","nativeSrc":"3455:3:5","nodeType":"YulIdentifier","src":"3455:3:5"},"nativeSrc":"3455:46:5","nodeType":"YulFunctionCall","src":"3455:46:5"}],"functionName":{"name":"eq","nativeSrc":"3445:2:5","nodeType":"YulIdentifier","src":"3445:2:5"},"nativeSrc":"3445:57:5","nodeType":"YulFunctionCall","src":"3445:57:5"}],"functionName":{"name":"iszero","nativeSrc":"3438:6:5","nodeType":"YulIdentifier","src":"3438:6:5"},"nativeSrc":"3438:65:5","nodeType":"YulFunctionCall","src":"3438:65:5"},"nativeSrc":"3435:85:5","nodeType":"YulIf","src":"3435:85:5"}]},"name":"abi_decode_uint128_fromMemory","nativeSrc":"3334:192:5","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nativeSrc":"3373:6:5","nodeType":"YulTypedName","src":"3373:6:5","type":""}],"returnVariables":[{"name":"value","nativeSrc":"3384:5:5","nodeType":"YulTypedName","src":"3384:5:5","type":""}],"src":"3334:192:5"},{"body":{"nativeSrc":"3646:285:5","nodeType":"YulBlock","src":"3646:285:5","statements":[{"body":{"nativeSrc":"3692:16:5","nodeType":"YulBlock","src":"3692:16:5","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"3701:1:5","nodeType":"YulLiteral","src":"3701:1:5","type":"","value":"0"},{"kind":"number","nativeSrc":"3704:1:5","nodeType":"YulLiteral","src":"3704:1:5","type":"","value":"0"}],"functionName":{"name":"revert","nativeSrc":"3694:6:5","nodeType":"YulIdentifier","src":"3694:6:5"},"nativeSrc":"3694:12:5","nodeType":"YulFunctionCall","src":"3694:12:5"},"nativeSrc":"3694:12:5","nodeType":"YulExpressionStatement","src":"3694:12:5"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nativeSrc":"3667:7:5","nodeType":"YulIdentifier","src":"3667:7:5"},{"name":"headStart","nativeSrc":"3676:9:5","nodeType":"YulIdentifier","src":"3676:9:5"}],"functionName":{"name":"sub","nativeSrc":"3663:3:5","nodeType":"YulIdentifier","src":"3663:3:5"},"nativeSrc":"3663:23:5","nodeType":"YulFunctionCall","src":"3663:23:5"},{"kind":"number","nativeSrc":"3688:2:5","nodeType":"YulLiteral","src":"3688:2:5","type":"","value":"96"}],"functionName":{"name":"slt","nativeSrc":"3659:3:5","nodeType":"YulIdentifier","src":"3659:3:5"},"nativeSrc":"3659:32:5","nodeType":"YulFunctionCall","src":"3659:32:5"},"nativeSrc":"3656:52:5","nodeType":"YulIf","src":"3656:52:5"},{"nativeSrc":"3717:50:5","nodeType":"YulAssignment","src":"3717:50:5","value":{"arguments":[{"name":"headStart","nativeSrc":"3757:9:5","nodeType":"YulIdentifier","src":"3757:9:5"}],"functionName":{"name":"abi_decode_uint128_fromMemory","nativeSrc":"3727:29:5","nodeType":"YulIdentifier","src":"3727:29:5"},"nativeSrc":"3727:40:5","nodeType":"YulFunctionCall","src":"3727:40:5"},"variableNames":[{"name":"value0","nativeSrc":"3717:6:5","nodeType":"YulIdentifier","src":"3717:6:5"}]},{"nativeSrc":"3776:59:5","nodeType":"YulAssignment","src":"3776:59:5","value":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"3820:9:5","nodeType":"YulIdentifier","src":"3820:9:5"},{"kind":"number","nativeSrc":"3831:2:5","nodeType":"YulLiteral","src":"3831:2:5","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"3816:3:5","nodeType":"YulIdentifier","src":"3816:3:5"},"nativeSrc":"3816:18:5","nodeType":"YulFunctionCall","src":"3816:18:5"}],"functionName":{"name":"abi_decode_uint128_fromMemory","nativeSrc":"3786:29:5","nodeType":"YulIdentifier","src":"3786:29:5"},"nativeSrc":"3786:49:5","nodeType":"YulFunctionCall","src":"3786:49:5"},"variableNames":[{"name":"value1","nativeSrc":"3776:6:5","nodeType":"YulIdentifier","src":"3776:6:5"}]},{"nativeSrc":"3844:14:5","nodeType":"YulVariableDeclaration","src":"3844:14:5","value":{"kind":"number","nativeSrc":"3857:1:5","nodeType":"YulLiteral","src":"3857:1:5","type":"","value":"0"},"variables":[{"name":"value","nativeSrc":"3848:5:5","nodeType":"YulTypedName","src":"3848:5:5","type":""}]},{"nativeSrc":"3867:34:5","nodeType":"YulAssignment","src":"3867:34:5","value":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"3886:9:5","nodeType":"YulIdentifier","src":"3886:9:5"},{"kind":"number","nativeSrc":"3897:2:5","nodeType":"YulLiteral","src":"3897:2:5","type":"","value":"64"}],"functionName":{"name":"add","nativeSrc":"3882:3:5","nodeType":"YulIdentifier","src":"3882:3:5"},"nativeSrc":"3882:18:5","nodeType":"YulFunctionCall","src":"3882:18:5"}],"functionName":{"name":"mload","nativeSrc":"3876:5:5","nodeType":"YulIdentifier","src":"3876:5:5"},"nativeSrc":"3876:25:5","nodeType":"YulFunctionCall","src":"3876:25:5"},"variableNames":[{"name":"value","nativeSrc":"3867:5:5","nodeType":"YulIdentifier","src":"3867:5:5"}]},{"nativeSrc":"3910:15:5","nodeType":"YulAssignment","src":"3910:15:5","value":{"name":"value","nativeSrc":"3920:5:5","nodeType":"YulIdentifier","src":"3920:5:5"},"variableNames":[{"name":"value2","nativeSrc":"3910:6:5","nodeType":"YulIdentifier","src":"3910:6:5"}]}]},"name":"abi_decode_tuple_t_uint128t_uint128t_uint256_fromMemory","nativeSrc":"3531:400:5","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"3596:9:5","nodeType":"YulTypedName","src":"3596:9:5","type":""},{"name":"dataEnd","nativeSrc":"3607:7:5","nodeType":"YulTypedName","src":"3607:7:5","type":""}],"returnVariables":[{"name":"value0","nativeSrc":"3619:6:5","nodeType":"YulTypedName","src":"3619:6:5","type":""},{"name":"value1","nativeSrc":"3627:6:5","nodeType":"YulTypedName","src":"3627:6:5","type":""},{"name":"value2","nativeSrc":"3635:6:5","nodeType":"YulTypedName","src":"3635:6:5","type":""}],"src":"3531:400:5"},{"body":{"nativeSrc":"3988:213:5","nodeType":"YulBlock","src":"3988:213:5","statements":[{"nativeSrc":"3998:20:5","nodeType":"YulAssignment","src":"3998:20:5","value":{"arguments":[{"name":"x","nativeSrc":"4013:1:5","nodeType":"YulIdentifier","src":"4013:1:5"},{"name":"y","nativeSrc":"4016:1:5","nodeType":"YulIdentifier","src":"4016:1:5"}],"functionName":{"name":"mul","nativeSrc":"4009:3:5","nodeType":"YulIdentifier","src":"4009:3:5"},"nativeSrc":"4009:9:5","nodeType":"YulFunctionCall","src":"4009:9:5"},"variableNames":[{"name":"product","nativeSrc":"3998:7:5","nodeType":"YulIdentifier","src":"3998:7:5"}]},{"body":{"nativeSrc":"4084:111:5","nodeType":"YulBlock","src":"4084:111:5","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"4105:1:5","nodeType":"YulLiteral","src":"4105:1:5","type":"","value":"0"},{"arguments":[{"kind":"number","nativeSrc":"4112:3:5","nodeType":"YulLiteral","src":"4112:3:5","type":"","value":"224"},{"kind":"number","nativeSrc":"4117:10:5","nodeType":"YulLiteral","src":"4117:10:5","type":"","value":"0x4e487b71"}],"functionName":{"name":"shl","nativeSrc":"4108:3:5","nodeType":"YulIdentifier","src":"4108:3:5"},"nativeSrc":"4108:20:5","nodeType":"YulFunctionCall","src":"4108:20:5"}],"functionName":{"name":"mstore","nativeSrc":"4098:6:5","nodeType":"YulIdentifier","src":"4098:6:5"},"nativeSrc":"4098:31:5","nodeType":"YulFunctionCall","src":"4098:31:5"},"nativeSrc":"4098:31:5","nodeType":"YulExpressionStatement","src":"4098:31:5"},{"expression":{"arguments":[{"kind":"number","nativeSrc":"4149:1:5","nodeType":"YulLiteral","src":"4149:1:5","type":"","value":"4"},{"kind":"number","nativeSrc":"4152:4:5","nodeType":"YulLiteral","src":"4152:4:5","type":"","value":"0x11"}],"functionName":{"name":"mstore","nativeSrc":"4142:6:5","nodeType":"YulIdentifier","src":"4142:6:5"},"nativeSrc":"4142:15:5","nodeType":"YulFunctionCall","src":"4142:15:5"},"nativeSrc":"4142:15:5","nodeType":"YulExpressionStatement","src":"4142:15:5"},{"expression":{"arguments":[{"kind":"number","nativeSrc":"4177:1:5","nodeType":"YulLiteral","src":"4177:1:5","type":"","value":"0"},{"kind":"number","nativeSrc":"4180:4:5","nodeType":"YulLiteral","src":"4180:4:5","type":"","value":"0x24"}],"functionName":{"name":"revert","nativeSrc":"4170:6:5","nodeType":"YulIdentifier","src":"4170:6:5"},"nativeSrc":"4170:15:5","nodeType":"YulFunctionCall","src":"4170:15:5"},"nativeSrc":"4170:15:5","nodeType":"YulExpressionStatement","src":"4170:15:5"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"x","nativeSrc":"4047:1:5","nodeType":"YulIdentifier","src":"4047:1:5"}],"functionName":{"name":"iszero","nativeSrc":"4040:6:5","nodeType":"YulIdentifier","src":"4040:6:5"},"nativeSrc":"4040:9:5","nodeType":"YulFunctionCall","src":"4040:9:5"},{"arguments":[{"name":"y","nativeSrc":"4054:1:5","nodeType":"YulIdentifier","src":"4054:1:5"},{"arguments":[{"name":"product","nativeSrc":"4061:7:5","nodeType":"YulIdentifier","src":"4061:7:5"},{"name":"x","nativeSrc":"4070:1:5","nodeType":"YulIdentifier","src":"4070:1:5"}],"functionName":{"name":"div","nativeSrc":"4057:3:5","nodeType":"YulIdentifier","src":"4057:3:5"},"nativeSrc":"4057:15:5","nodeType":"YulFunctionCall","src":"4057:15:5"}],"functionName":{"name":"eq","nativeSrc":"4051:2:5","nodeType":"YulIdentifier","src":"4051:2:5"},"nativeSrc":"4051:22:5","nodeType":"YulFunctionCall","src":"4051:22:5"}],"functionName":{"name":"or","nativeSrc":"4037:2:5","nodeType":"YulIdentifier","src":"4037:2:5"},"nativeSrc":"4037:37:5","nodeType":"YulFunctionCall","src":"4037:37:5"}],"functionName":{"name":"iszero","nativeSrc":"4030:6:5","nodeType":"YulIdentifier","src":"4030:6:5"},"nativeSrc":"4030:45:5","nodeType":"YulFunctionCall","src":"4030:45:5"},"nativeSrc":"4027:168:5","nodeType":"YulIf","src":"4027:168:5"}]},"name":"checked_mul_t_uint256","nativeSrc":"3936:265:5","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nativeSrc":"3967:1:5","nodeType":"YulTypedName","src":"3967:1:5","type":""},{"name":"y","nativeSrc":"3970:1:5","nodeType":"YulTypedName","src":"3970:1:5","type":""}],"returnVariables":[{"name":"product","nativeSrc":"3976:7:5","nodeType":"YulTypedName","src":"3976:7:5","type":""}],"src":"3936:265:5"},{"body":{"nativeSrc":"4252:171:5","nodeType":"YulBlock","src":"4252:171:5","statements":[{"body":{"nativeSrc":"4283:111:5","nodeType":"YulBlock","src":"4283:111:5","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"4304:1:5","nodeType":"YulLiteral","src":"4304:1:5","type":"","value":"0"},{"arguments":[{"kind":"number","nativeSrc":"4311:3:5","nodeType":"YulLiteral","src":"4311:3:5","type":"","value":"224"},{"kind":"number","nativeSrc":"4316:10:5","nodeType":"YulLiteral","src":"4316:10:5","type":"","value":"0x4e487b71"}],"functionName":{"name":"shl","nativeSrc":"4307:3:5","nodeType":"YulIdentifier","src":"4307:3:5"},"nativeSrc":"4307:20:5","nodeType":"YulFunctionCall","src":"4307:20:5"}],"functionName":{"name":"mstore","nativeSrc":"4297:6:5","nodeType":"YulIdentifier","src":"4297:6:5"},"nativeSrc":"4297:31:5","nodeType":"YulFunctionCall","src":"4297:31:5"},"nativeSrc":"4297:31:5","nodeType":"YulExpressionStatement","src":"4297:31:5"},{"expression":{"arguments":[{"kind":"number","nativeSrc":"4348:1:5","nodeType":"YulLiteral","src":"4348:1:5","type":"","value":"4"},{"kind":"number","nativeSrc":"4351:4:5","nodeType":"YulLiteral","src":"4351:4:5","type":"","value":"0x12"}],"functionName":{"name":"mstore","nativeSrc":"4341:6:5","nodeType":"YulIdentifier","src":"4341:6:5"},"nativeSrc":"4341:15:5","nodeType":"YulFunctionCall","src":"4341:15:5"},"nativeSrc":"4341:15:5","nodeType":"YulExpressionStatement","src":"4341:15:5"},{"expression":{"arguments":[{"kind":"number","nativeSrc":"4376:1:5","nodeType":"YulLiteral","src":"4376:1:5","type":"","value":"0"},{"kind":"number","nativeSrc":"4379:4:5","nodeType":"YulLiteral","src":"4379:4:5","type":"","value":"0x24"}],"functionName":{"name":"revert","nativeSrc":"4369:6:5","nodeType":"YulIdentifier","src":"4369:6:5"},"nativeSrc":"4369:15:5","nodeType":"YulFunctionCall","src":"4369:15:5"},"nativeSrc":"4369:15:5","nodeType":"YulExpressionStatement","src":"4369:15:5"}]},"condition":{"arguments":[{"name":"y","nativeSrc":"4272:1:5","nodeType":"YulIdentifier","src":"4272:1:5"}],"functionName":{"name":"iszero","nativeSrc":"4265:6:5","nodeType":"YulIdentifier","src":"4265:6:5"},"nativeSrc":"4265:9:5","nodeType":"YulFunctionCall","src":"4265:9:5"},"nativeSrc":"4262:132:5","nodeType":"YulIf","src":"4262:132:5"},{"nativeSrc":"4403:14:5","nodeType":"YulAssignment","src":"4403:14:5","value":{"arguments":[{"name":"x","nativeSrc":"4412:1:5","nodeType":"YulIdentifier","src":"4412:1:5"},{"name":"y","nativeSrc":"4415:1:5","nodeType":"YulIdentifier","src":"4415:1:5"}],"functionName":{"name":"div","nativeSrc":"4408:3:5","nodeType":"YulIdentifier","src":"4408:3:5"},"nativeSrc":"4408:9:5","nodeType":"YulFunctionCall","src":"4408:9:5"},"variableNames":[{"name":"r","nativeSrc":"4403:1:5","nodeType":"YulIdentifier","src":"4403:1:5"}]}]},"name":"checked_div_t_uint256","nativeSrc":"4206:217:5","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nativeSrc":"4237:1:5","nodeType":"YulTypedName","src":"4237:1:5","type":""},{"name":"y","nativeSrc":"4240:1:5","nodeType":"YulTypedName","src":"4240:1:5","type":""}],"returnVariables":[{"name":"r","nativeSrc":"4246:1:5","nodeType":"YulTypedName","src":"4246:1:5","type":""}],"src":"4206:217:5"}]},"contents":"{\n    { }\n    function abi_encode_tuple_t_contract$_IPriceOracle_$825__to_t_address__fromStack_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 32)\n        mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n    }\n    function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 32)\n        mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n    }\n    function abi_encode_tuple_t_contract$_AggregatedStakedPSYSV3_$737__to_t_address__fromStack_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 32)\n        mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n    }\n    function abi_decode_tuple_t_address(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        let value := calldataload(headStart)\n        if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n        value0 := value\n    }\n    function abi_encode_struct_CooldownData(value, pos)\n    {\n        mstore(pos, and(mload(value), 0xffffffffff))\n        mstore(add(pos, 0x20), and(mload(add(value, 0x20)), sub(shl(216, 1), 1)))\n    }\n    function abi_encode_tuple_t_struct$_StakeData_$865_memory_ptr__to_t_struct$_StakeData_$865_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 480)\n        mstore(headStart, mload(value0))\n        mstore(add(headStart, 0x20), mload(add(value0, 0x20)))\n        mstore(add(headStart, 0x40), mload(add(value0, 0x40)))\n        mstore(add(headStart, 0x60), mload(add(value0, 0x60)))\n        mstore(add(headStart, 0x80), mload(add(value0, 0x80)))\n        mstore(add(headStart, 0xa0), mload(add(value0, 0xa0)))\n        mstore(add(headStart, 0xc0), mload(add(value0, 0xc0)))\n        mstore(add(headStart, 0xe0), mload(add(value0, 0xe0)))\n        mstore(add(headStart, 0x0100), mload(add(value0, 0x0100)))\n        mstore(add(headStart, 0x0120), mload(add(value0, 0x0120)))\n        mstore(add(headStart, 0x0140), mload(add(value0, 0x0140)))\n        mstore(add(headStart, 0x0160), mload(add(value0, 0x0160)))\n        mstore(add(headStart, 0x0180), mload(add(value0, 0x0180)))\n        let memberValue0 := mload(add(value0, 0x01a0))\n        abi_encode_struct_CooldownData(memberValue0, add(headStart, 0x01a0))\n    }\n    function abi_decode_tuple_t_uint256_fromMemory(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        let value := 0\n        value := mload(headStart)\n        value0 := value\n    }\n    function abi_decode_uint216_fromMemory(offset) -> value\n    {\n        value := mload(offset)\n        if iszero(eq(value, and(value, sub(shl(216, 1), 1)))) { revert(0, 0) }\n    }\n    function abi_decode_tuple_t_uint216_fromMemory(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        value0 := abi_decode_uint216_fromMemory(headStart)\n    }\n    function abi_decode_tuple_t_uint40t_uint216_fromMemory(headStart, dataEnd) -> value0, value1\n    {\n        if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n        let value := mload(headStart)\n        if iszero(eq(value, and(value, 0xffffffffff))) { revert(0, 0) }\n        value0 := value\n        value1 := abi_decode_uint216_fromMemory(add(headStart, 32))\n    }\n    function abi_decode_uint128_fromMemory(offset) -> value\n    {\n        value := mload(offset)\n        if iszero(eq(value, and(value, 0xffffffffffffffffffffffffffffffff))) { revert(0, 0) }\n    }\n    function abi_decode_tuple_t_uint128t_uint128t_uint256_fromMemory(headStart, dataEnd) -> value0, value1, value2\n    {\n        if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n        value0 := abi_decode_uint128_fromMemory(headStart)\n        value1 := abi_decode_uint128_fromMemory(add(headStart, 32))\n        let value := 0\n        value := mload(add(headStart, 64))\n        value2 := value\n    }\n    function checked_mul_t_uint256(x, y) -> product\n    {\n        product := mul(x, y)\n        if iszero(or(iszero(x), eq(y, div(product, x))))\n        {\n            mstore(0, shl(224, 0x4e487b71))\n            mstore(4, 0x11)\n            revert(0, 0x24)\n        }\n    }\n    function checked_div_t_uint256(x, y) -> r\n    {\n        if iszero(y)\n        {\n            mstore(0, shl(224, 0x4e487b71))\n            mstore(4, 0x12)\n            revert(0, 0x24)\n        }\n        r := div(x, y)\n    }\n}","id":5,"language":"Yul","name":"#utility.yul"}],"immutableReferences":{"891":[{"length":32,"start":86},{"length":32,"start":753}],"893":[{"length":32,"start":154},{"length":32,"start":713},{"length":32,"start":1409}],"896":[{"length":32,"start":193},{"length":32,"start":277},{"length":32,"start":416},{"length":32,"start":555},{"length":32,"start":898},{"length":32,"start":1029},{"length":32,"start":1265},{"length":32,"start":1553},{"length":32,"start":1702},{"length":32,"start":1868},{"length":32,"start":1905},{"length":32,"start":2087}]},"linkReferences":{},"object":"608060405234801561001057600080fd5b506004361061004c5760003560e01c80630a19399a146100515780634ac79d9614610095578063e0fdf79f146100bc578063e9ce34a5146100e3575b600080fd5b6100787f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6100787f000000000000000000000000000000000000000000000000000000000000000081565b6100787f000000000000000000000000000000000000000000000000000000000000000081565b6100f66100f13660046109a7565b610103565b60405161008c91906109d0565b61010b61090e565b61011361090e565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610171573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101959190610a94565b8160000181815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663616e0bf96040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101fc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102209190610a94565b8160200181815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663359c4a966040518163ffffffff1660e01b8152600401602060405180830381865afa158015610287573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102ab9190610a94565b6040828101919091525163b3596f0760e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660048301527f0000000000000000000000000000000000000000000000000000000000000000169063b3596f0790602401602060405180830381865afa158015610338573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061035c9190610a94565b606082018190526080820152604080516339aa885b60e21b815290516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169163e6aa216c9160048083019260209291908290030181865afa1580156103cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103f19190610ac9565b6001600160d81b03168160c00181815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f34d96da6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610461573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104859190610a94565b610180820152600080610496610745565b60a0850182905260e08501819052845160c08601519294509092506104bd918491906108aa565b6101008401526001600160a01b0385161561073c576040516370a0823160e01b81526001600160a01b0386811660048301527f000000000000000000000000000000000000000000000000000000000000000016906370a0823190602401602060405180830381865afa158015610538573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055c9190610a94565b6101208401526040516370a0823160e01b81526001600160a01b0386811660048301527f000000000000000000000000000000000000000000000000000000000000000016906370a0823190602401602060405180830381865afa1580156105c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ec9190610a94565b6101408401526040516346df7f7160e11b81526001600160a01b0386811660048301527f00000000000000000000000000000000000000000000000000000000000000001690638dbefee290602401602060405180830381865afa158015610658573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061067c9190610a94565b61016084015260405163091030c360e01b81526001600160a01b03868116600483015260009182917f0000000000000000000000000000000000000000000000000000000000000000169063091030c3906024016040805180830381865afa1580156106ec573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107109190610ae4565b6040805180820190915264ffffffffff90921682526001600160d81b031660208201526101a086015250505b50909392505050565b60008060007f0000000000000000000000000000000000000000000000000000000000000000905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663919cd40f6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107f19190610a94565b905080421061080557600094909350915050565b604051631e23703160e31b81526001600160a01b0383811660048301526000917f00000000000000000000000000000000000000000000000000000000000000009091169063f11b818890602401606060405180830381865afa158015610870573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108949190610b3a565b50506001600160801b0316959194509092505050565b6000826000036108bc57506000610907565b6000670de0b6b3a7640000836108d66301e1338088610b79565b6108e09190610b79565b6108ea9190610ba4565b9050836108f961271083610b79565b6109039190610ba4565b9150505b9392505050565b604051806101c00160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016109a26040518060400160405280600064ffffffffff16815260200160006001600160d81b031681525090565b905290565b6000602082840312156109b957600080fd5b81356001600160a01b038116811461090757600080fd5b60006101e082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e08301526101008301516101008301526101208301516101208301526101408301516101408301526101608301516101608301526101808301516101808301526101a0830151610a8d6101a0840182805164ffffffffff1682526020908101516001600160d81b0316910152565b5092915050565b600060208284031215610aa657600080fd5b5051919050565b80516001600160d81b0381168114610ac457600080fd5b919050565b600060208284031215610adb57600080fd5b61090782610aad565b60008060408385031215610af757600080fd5b825164ffffffffff81168114610b0c57600080fd5b9150610b1a60208401610aad565b90509250929050565b80516001600160801b0381168114610ac457600080fd5b600080600060608486031215610b4f57600080fd5b610b5884610b23565b9250610b6660208501610b23565b6040949094015192959394509192915050565b8082028115828204841417610b9e57634e487b7160e01b600052601160045260246000fd5b92915050565b600082610bc157634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220d92f7ef2a9761b707d99a36179f184449fb9cceb10d278e93be8fcf4da23b00064736f6c634300081b0033","opcodes":"PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x4C JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xA19399A EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x4AC79D96 EQ PUSH2 0x95 JUMPI DUP1 PUSH4 0xE0FDF79F EQ PUSH2 0xBC JUMPI DUP1 PUSH4 0xE9CE34A5 EQ PUSH2 0xE3 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x78 PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x78 PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH2 0x78 PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH2 0xF6 PUSH2 0xF1 CALLDATASIZE PUSH1 0x4 PUSH2 0x9A7 JUMP JUMPDEST PUSH2 0x103 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x8C SWAP2 SWAP1 PUSH2 0x9D0 JUMP JUMPDEST PUSH2 0x10B PUSH2 0x90E JUMP JUMPDEST PUSH2 0x113 PUSH2 0x90E JUMP JUMPDEST PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x18160DDD PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x171 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x195 SWAP2 SWAP1 PUSH2 0xA94 JUMP JUMPDEST DUP2 PUSH1 0x0 ADD DUP2 DUP2 MSTORE POP POP PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x616E0BF9 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1FC JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x220 SWAP2 SWAP1 PUSH2 0xA94 JUMP JUMPDEST DUP2 PUSH1 0x20 ADD DUP2 DUP2 MSTORE POP POP PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x359C4A96 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x287 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2AB SWAP2 SWAP1 PUSH2 0xA94 JUMP JUMPDEST PUSH1 0x40 DUP3 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE MLOAD PUSH4 0xB3596F07 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE PUSH32 0x0 AND SWAP1 PUSH4 0xB3596F07 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x338 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x35C SWAP2 SWAP1 PUSH2 0xA94 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x80 DUP3 ADD MSTORE PUSH1 0x40 DUP1 MLOAD PUSH4 0x39AA885B PUSH1 0xE2 SHL DUP2 MSTORE SWAP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND SWAP2 PUSH4 0xE6AA216C SWAP2 PUSH1 0x4 DUP1 DUP4 ADD SWAP3 PUSH1 0x20 SWAP3 SWAP2 SWAP1 DUP3 SWAP1 SUB ADD DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x3CD JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x3F1 SWAP2 SWAP1 PUSH2 0xAC9 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xD8 SHL SUB AND DUP2 PUSH1 0xC0 ADD DUP2 DUP2 MSTORE POP POP PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xF34D96DA PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x461 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x485 SWAP2 SWAP1 PUSH2 0xA94 JUMP JUMPDEST PUSH2 0x180 DUP3 ADD MSTORE PUSH1 0x0 DUP1 PUSH2 0x496 PUSH2 0x745 JUMP JUMPDEST PUSH1 0xA0 DUP6 ADD DUP3 SWAP1 MSTORE PUSH1 0xE0 DUP6 ADD DUP2 SWAP1 MSTORE DUP5 MLOAD PUSH1 0xC0 DUP7 ADD MLOAD SWAP3 SWAP5 POP SWAP1 SWAP3 POP PUSH2 0x4BD SWAP2 DUP5 SWAP2 SWAP1 PUSH2 0x8AA JUMP JUMPDEST PUSH2 0x100 DUP5 ADD MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND ISZERO PUSH2 0x73C JUMPI PUSH1 0x40 MLOAD PUSH4 0x70A08231 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE PUSH32 0x0 AND SWAP1 PUSH4 0x70A08231 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x538 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x55C SWAP2 SWAP1 PUSH2 0xA94 JUMP JUMPDEST PUSH2 0x120 DUP5 ADD MSTORE PUSH1 0x40 MLOAD PUSH4 0x70A08231 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE PUSH32 0x0 AND SWAP1 PUSH4 0x70A08231 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x5C8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x5EC SWAP2 SWAP1 PUSH2 0xA94 JUMP JUMPDEST PUSH2 0x140 DUP5 ADD MSTORE PUSH1 0x40 MLOAD PUSH4 0x46DF7F71 PUSH1 0xE1 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE PUSH32 0x0 AND SWAP1 PUSH4 0x8DBEFEE2 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x658 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x67C SWAP2 SWAP1 PUSH2 0xA94 JUMP JUMPDEST PUSH2 0x160 DUP5 ADD MSTORE PUSH1 0x40 MLOAD PUSH4 0x91030C3 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE PUSH1 0x0 SWAP2 DUP3 SWAP2 PUSH32 0x0 AND SWAP1 PUSH4 0x91030C3 SWAP1 PUSH1 0x24 ADD PUSH1 0x40 DUP1 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x6EC JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x710 SWAP2 SWAP1 PUSH2 0xAE4 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH5 0xFFFFFFFFFF SWAP1 SWAP3 AND DUP3 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xD8 SHL SUB AND PUSH1 0x20 DUP3 ADD MSTORE PUSH2 0x1A0 DUP7 ADD MSTORE POP POP JUMPDEST POP SWAP1 SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH32 0x0 SWAP1 POP PUSH1 0x0 PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x919CD40F PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x7CD JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x7F1 SWAP2 SWAP1 PUSH2 0xA94 JUMP JUMPDEST SWAP1 POP DUP1 TIMESTAMP LT PUSH2 0x805 JUMPI PUSH1 0x0 SWAP5 SWAP1 SWAP4 POP SWAP2 POP POP JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x1E237031 PUSH1 0xE3 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE PUSH1 0x0 SWAP2 PUSH32 0x0 SWAP1 SWAP2 AND SWAP1 PUSH4 0xF11B8188 SWAP1 PUSH1 0x24 ADD PUSH1 0x60 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x870 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x894 SWAP2 SWAP1 PUSH2 0xB3A JUMP JUMPDEST POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB AND SWAP6 SWAP2 SWAP5 POP SWAP1 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x0 SUB PUSH2 0x8BC JUMPI POP PUSH1 0x0 PUSH2 0x907 JUMP JUMPDEST PUSH1 0x0 PUSH8 0xDE0B6B3A7640000 DUP4 PUSH2 0x8D6 PUSH4 0x1E13380 DUP9 PUSH2 0xB79 JUMP JUMPDEST PUSH2 0x8E0 SWAP2 SWAP1 PUSH2 0xB79 JUMP JUMPDEST PUSH2 0x8EA SWAP2 SWAP1 PUSH2 0xBA4 JUMP JUMPDEST SWAP1 POP DUP4 PUSH2 0x8F9 PUSH2 0x2710 DUP4 PUSH2 0xB79 JUMP JUMPDEST PUSH2 0x903 SWAP2 SWAP1 PUSH2 0xBA4 JUMP JUMPDEST SWAP2 POP POP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH2 0x1C0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x9A2 PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH5 0xFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xD8 SHL SUB AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST SWAP1 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x9B9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0x907 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1E0 DUP3 ADD SWAP1 POP DUP3 MLOAD DUP3 MSTORE PUSH1 0x20 DUP4 ADD MLOAD PUSH1 0x20 DUP4 ADD MSTORE PUSH1 0x40 DUP4 ADD MLOAD PUSH1 0x40 DUP4 ADD MSTORE PUSH1 0x60 DUP4 ADD MLOAD PUSH1 0x60 DUP4 ADD MSTORE PUSH1 0x80 DUP4 ADD MLOAD PUSH1 0x80 DUP4 ADD MSTORE PUSH1 0xA0 DUP4 ADD MLOAD PUSH1 0xA0 DUP4 ADD MSTORE PUSH1 0xC0 DUP4 ADD MLOAD PUSH1 0xC0 DUP4 ADD MSTORE PUSH1 0xE0 DUP4 ADD MLOAD PUSH1 0xE0 DUP4 ADD MSTORE PUSH2 0x100 DUP4 ADD MLOAD PUSH2 0x100 DUP4 ADD MSTORE PUSH2 0x120 DUP4 ADD MLOAD PUSH2 0x120 DUP4 ADD MSTORE PUSH2 0x140 DUP4 ADD MLOAD PUSH2 0x140 DUP4 ADD MSTORE PUSH2 0x160 DUP4 ADD MLOAD PUSH2 0x160 DUP4 ADD MSTORE PUSH2 0x180 DUP4 ADD MLOAD PUSH2 0x180 DUP4 ADD MSTORE PUSH2 0x1A0 DUP4 ADD MLOAD PUSH2 0xA8D PUSH2 0x1A0 DUP5 ADD DUP3 DUP1 MLOAD PUSH5 0xFFFFFFFFFF AND DUP3 MSTORE PUSH1 0x20 SWAP1 DUP2 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xD8 SHL SUB AND SWAP2 ADD MSTORE JUMP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xAA6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP MLOAD SWAP2 SWAP1 POP JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xD8 SHL SUB DUP2 AND DUP2 EQ PUSH2 0xAC4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xADB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x907 DUP3 PUSH2 0xAAD JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xAF7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 MLOAD PUSH5 0xFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0xB0C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 POP PUSH2 0xB1A PUSH1 0x20 DUP5 ADD PUSH2 0xAAD JUMP JUMPDEST SWAP1 POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB DUP2 AND DUP2 EQ PUSH2 0xAC4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0xB4F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB58 DUP5 PUSH2 0xB23 JUMP JUMPDEST SWAP3 POP PUSH2 0xB66 PUSH1 0x20 DUP6 ADD PUSH2 0xB23 JUMP JUMPDEST PUSH1 0x40 SWAP5 SWAP1 SWAP5 ADD MLOAD SWAP3 SWAP6 SWAP4 SWAP5 POP SWAP2 SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 DUP3 MUL DUP2 ISZERO DUP3 DUP3 DIV DUP5 EQ OR PUSH2 0xB9E JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH2 0xBC1 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP DIV SWAP1 JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xD9 0x2F PUSH31 0xF2A9761B707D99A36179F184449FB9CCEB10D278E93BE8FCF4DA23B0006473 PUSH16 0x6C634300081B00330000000000000000 ","sourceMap":"443:2973:4:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;488:42;;;;;;;;-1:-1:-1;;;;;198:32:5;;;180:51;;168:2;153:18;488:42:4;;;;;;;;535:29;;;;;568:51;;;;;1060:1413;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;1123:16;;:::i;:::-;1147:21;;:::i;:::-;1232:11;-1:-1:-1;;;;;1232:23:4;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1203:4;:26;;:54;;;;;1291:11;-1:-1:-1;;;;;1291:30:4;;:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1263:4;:25;;:60;;;;;1355:11;-1:-1:-1;;;;;1355:26:4;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1329:23;;;;:54;;;;1416:32;-1:-1:-1;;;1416:32:4;;-1:-1:-1;;;;;1443:4:4;198:32:5;;1416::4;;;180:51:5;1416:12:4;:26;;;;153:18:5;;1416:32:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1389:24;;;:59;;;1454:23;;;:50;1530:29;;;-1:-1:-1;;;1530:29:4;;;;-1:-1:-1;;;;;1530:11:4;:27;;;;:29;;;;;;;;;;;;;;:27;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;1510:49:4;:4;:17;;:49;;;;;1585:11;-1:-1:-1;;;;;1585:37:4;;:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1565:17;;;:59;1673:24;;1726:17;:15;:17::i;:::-;1749:21;;;:40;;;1795:20;;;:38;;;1952:26;;1986:17;;;;1672:71;;-1:-1:-1;1672:71:4;;-1:-1:-1;1907:102:4;;1672:71;;1952:26;1907:13;:102::i;:::-;1891:13;;;:118;-1:-1:-1;;;;;2046:18:4;;;2042:409;;2103:27;;-1:-1:-1;;;2103:27:4;;-1:-1:-1;;;;;198:32:5;;;2103:27:4;;;180:51:5;2103:11:4;:21;;;;153:18:5;;2103:27:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2074:26;;;:56;2172:28;;-1:-1:-1;;;2172:28:4;;-1:-1:-1;;;;;198:32:5;;;2172:28:4;;;180:51:5;2179:4:4;2172:22;;;;153:18:5;;2172:28:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2138:31;;;:62;2234:40;;-1:-1:-1;;;2234:40:4;;-1:-1:-1;;;;;198:32:5;;;2234:40:4;;;180:51:5;2234:11:4;:34;;;;153:18:5;;2234:40:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2208:23;;;:66;2335:34;;-1:-1:-1;;;2335:34:4;;-1:-1:-1;;;;;198:32:5;;;2335:34:4;;;180:51:5;2283:24:4;;;;2335:11;:28;;;;153:18:5;;2335:34:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2397:47;;;;;;;;;;;;;;;-1:-1:-1;;;;;2397:47:4;;;;;2377:17;;;:67;-1:-1:-1;;2042:409:4;-1:-1:-1;2464:4:4;;1060:1413;-1:-1:-1;;;1060:1413:4:o;3012:402::-;3062:7;3071;3086:22;3119:11;3086:45;;3137:23;3163:11;-1:-1:-1;;;;;3163:28:4;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3137:56;;3227:15;3208;:34;3204:82;;3260:1;;3263:15;;-1:-1:-1;3012:402:4;-1:-1:-1;;3012:402:4:o;3204:82::-;3326:34;;-1:-1:-1;;;3326:34:4;;-1:-1:-1;;;;;198:32:5;;;3326:34:4;;;180:51:5;3293:25:4;;3326:11;:18;;;;;;153::5;;3326:34:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;;;3292:68:4;;3393:15;;-1:-1:-1;3012:402:4;;-1:-1:-1;;;3012:402:4:o;2552:395::-;2683:7;2702:11;2717:1;2702:16;2698:30;;-1:-1:-1;2727:1:4;2720:8;;2698:30;2771;762:4;2842:12;2804:35;660:18;2804:16;:35;:::i;:::-;:50;;;;:::i;:::-;:71;;;;:::i;:::-;2771:104;-1:-1:-1;2931:11:4;2889:38;715:5;2771:104;2889:38;:::i;:::-;2888:54;;;;:::i;:::-;2881:61;;;2552:395;;;;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;688:286:5:-;747:6;800:2;788:9;779:7;775:23;771:32;768:52;;;816:1;813;806:12;768:52;842:23;;-1:-1:-1;;;;;894:31:5;;884:42;;874:70;;940:1;937;930:12;1182:1145;1326:4;1368:3;1357:9;1353:19;1345:27;;1405:6;1399:13;1388:9;1381:32;1469:4;1461:6;1457:17;1451:24;1444:4;1433:9;1429:20;1422:54;1532:4;1524:6;1520:17;1514:24;1507:4;1496:9;1492:20;1485:54;1595:4;1587:6;1583:17;1577:24;1570:4;1559:9;1555:20;1548:54;1658:4;1650:6;1646:17;1640:24;1633:4;1622:9;1618:20;1611:54;1721:4;1713:6;1709:17;1703:24;1696:4;1685:9;1681:20;1674:54;1784:4;1776:6;1772:17;1766:24;1759:4;1748:9;1744:20;1737:54;1847:4;1839:6;1835:17;1829:24;1822:4;1811:9;1807:20;1800:54;1912:6;1904;1900:19;1894:26;1885:6;1874:9;1870:22;1863:58;1979:6;1971;1967:19;1961:26;1952:6;1941:9;1937:22;1930:58;2046:6;2038;2034:19;2028:26;2019:6;2008:9;2004:22;1997:58;2113:6;2105;2101:19;2095:26;2086:6;2075:9;2071:22;2064:58;2180:6;2172;2168:19;2162:26;2153:6;2142:9;2138:22;2131:58;2236:6;2228;2224:19;2218:26;2253:68;2313:6;2302:9;2298:22;2284:12;1061;;1075;1057:31;1045:44;;1142:4;1131:16;;;1125:23;-1:-1:-1;;;;;1121:49:5;1105:14;;1098:73;979:198;2253:68;;1182:1145;;;;:::o;2332:230::-;2402:6;2455:2;2443:9;2434:7;2430:23;2426:32;2423:52;;;2471:1;2468;2461:12;2423:52;-1:-1:-1;2516:16:5;;2332:230;-1:-1:-1;2332:230:5:o;2567:177::-;2646:13;;-1:-1:-1;;;;;2688:31:5;;2678:42;;2668:70;;2734:1;2731;2724:12;2668:70;2567:177;;;:::o;2749:208::-;2819:6;2872:2;2860:9;2851:7;2847:23;2843:32;2840:52;;;2888:1;2885;2878:12;2840:52;2911:40;2941:9;2911:40;:::i;2962:367::-;3040:6;3048;3101:2;3089:9;3080:7;3076:23;3072:32;3069:52;;;3117:1;3114;3107:12;3069:52;3149:9;3143:16;3199:12;3192:5;3188:24;3181:5;3178:35;3168:63;;3227:1;3224;3217:12;3168:63;3250:5;-1:-1:-1;3274:49:5;3319:2;3304:18;;3274:49;:::i;:::-;3264:59;;2962:367;;;;;:::o;3334:192::-;3413:13;;-1:-1:-1;;;;;3455:46:5;;3445:57;;3435:85;;3516:1;3513;3506:12;3531:400;3619:6;3627;3635;3688:2;3676:9;3667:7;3663:23;3659:32;3656:52;;;3704:1;3701;3694:12;3656:52;3727:40;3757:9;3727:40;:::i;:::-;3717:50;;3786:49;3831:2;3820:9;3816:18;3786:49;:::i;:::-;3897:2;3882:18;;;;3876:25;3531:400;;3776:59;;-1:-1:-1;3876:25:5;;3531:400;-1:-1:-1;;3531:400:5:o;3936:265::-;4009:9;;;4040;;4057:15;;;4051:22;;4037:37;4027:168;;4117:10;4112:3;4108:20;4105:1;4098:31;4152:4;4149:1;4142:15;4180:4;4177:1;4170:15;4027:168;3936:265;;;;:::o;4206:217::-;4246:1;4272;4262:132;;4316:10;4311:3;4307:20;4304:1;4297:31;4351:4;4348:1;4341:15;4379:4;4376:1;4369:15;4262:132;-1:-1:-1;4408:9:5;;4206:217::o"},"methodIdentifiers":{"PRICE_ORACLE()":"0a19399a","PSYS()":"4ac79d96","STAKED_PSYS()":"e0fdf79f","getUserStakeData(address)":"e9ce34a5"}},"metadata":"{\"compiler\":{\"version\":\"0.8.27+commit.40a35a09\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IPriceOracle\",\"name\":\"priceOracle\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"psys\",\"type\":\"address\"},{\"internalType\":\"contract AggregatedStakedPSYSV3\",\"name\":\"stkPSYS\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"PRICE_ORACLE\",\"outputs\":[{\"internalType\":\"contract IPriceOracle\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PSYS\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"STAKED_PSYS\",\"outputs\":[{\"internalType\":\"contract AggregatedStakedPSYSV3\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"getUserStakeData\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"stakeTokenTotalSupply\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakeCooldownSeconds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakeUnstakeWindow\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"rewardTokenPriceEth\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakeTokenPriceEth\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"rewardsPerSecond\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"exchangeRate\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"distributionEnd\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakeApy\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"userStakeTokenBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"userUnderlyingTokenBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"userRewardsToClaim\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxSlashable\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"uint40\",\"name\":\"timestamp\",\"type\":\"uint40\"},{\"internalType\":\"uint216\",\"name\":\"amount\",\"type\":\"uint216\"}],\"internalType\":\"struct IStakeUIHelper.CooldownData\",\"name\":\"userCooldown\",\"type\":\"tuple\"}],\"internalType\":\"struct IStakeUIHelper.StakeData\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"BGD Labs, modified by Pegasys\",\"kind\":\"dev\",\"methods\":{\"getUserStakeData(address)\":{\"details\":\"Fetches all relevant staking data for a user\",\"params\":{\"user\":\"Address of the user\"}}},\"title\":\"StakeUIHelper\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"notice\":\"Helper contract to fetch staking data for UI\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/misc/StakeUIHelper.sol\":\"StakeUIHelper\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/interfaces/AggregatedStakedPSYSV3.sol\":{\"keccak256\":\"0xdb1f5f3726e9f9629b6af27968e2559f39e4402292231d4b36950685f395e4fb\",\"urls\":[\"bzz-raw://16477c802a46a2b53a68bceebdbb6fff4a246a802e00a659eb41bd9f291768c5\",\"dweb:/ipfs/Qmd6RaALUKkfrSYLgTY6MBn3Mts2vSjz6t95dEm5qwBWUz\"]},\"contracts/interfaces/IERC20.sol\":{\"keccak256\":\"0xf60c3588615e47906292265ebdc539f36e624cc166a7e338972e8f7479b3c58e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d61baa7db1a5ec4126d6ab038d6975151bcb173437e51d4d141325fe99f4630c\",\"dweb:/ipfs/QmZ8mYs5xSjd3vNYZWjjBREpob2T84yu5kaHiFFXuVw1jj\"]},\"contracts/interfaces/IPriceOracle.sol\":{\"keccak256\":\"0x88e35951f6e007528d847603c87e25af856f3105547ed6cbc4bcf037b9a87af0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ff0ccbf31c0fe66dc34db5a6e69437b06279ac3309fd2aeb133987754e1f9027\",\"dweb:/ipfs/QmQesoe8Q7KuZk5DbGNTdmfTDQdVqZrQc6X42jAZxJ4Sfm\"]},\"contracts/interfaces/IStakeUIHelper.sol\":{\"keccak256\":\"0x8e75f743849d2edda80482c7e31e152533a9edab73f1a92340dceb970839bf7d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4566a486cc43810d8772d86dab0d4632597413c6fc6f6d6938a4984692031a30\",\"dweb:/ipfs/QmayLWkebo9Mv3B9GpgcpjqNfoBogqMPRW4qLAUdTWbnQR\"]},\"contracts/misc/StakeUIHelper.sol\":{\"keccak256\":\"0x6a0c4ed75ebba3edfbc18ff7801b06467612f5b464546cbf96523c73cee0ff00\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://782ca120a32523e0f809c9a8d4387af98b88abbdd123350291d6672528c78c29\",\"dweb:/ipfs/QmVB8SbkAcfJpdSbGByCEw3uh5yu9GoVPofnjNJz9nrM8M\"]}},\"version\":1}"}}}}}