UNPKG

@tokamak-network/thanos-contracts

Version:
1 lines 31.9 kB
{"abi":[{"type":"function","name":"delegate","inputs":[{"name":"delegatee","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"delegateBySig","inputs":[{"name":"delegatee","type":"address","internalType":"address"},{"name":"nonce","type":"uint256","internalType":"uint256"},{"name":"expiry","type":"uint256","internalType":"uint256"},{"name":"v","type":"uint8","internalType":"uint8"},{"name":"r","type":"bytes32","internalType":"bytes32"},{"name":"s","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"delegates","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getPastTotalSupply","inputs":[{"name":"blockNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getPastVotes","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"blockNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getVotes","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"event","name":"DelegateChanged","inputs":[{"name":"delegator","type":"address","indexed":true,"internalType":"address"},{"name":"fromDelegate","type":"address","indexed":true,"internalType":"address"},{"name":"toDelegate","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"DelegateVotesChanged","inputs":[{"name":"delegate","type":"address","indexed":true,"internalType":"address"},{"name":"previousBalance","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"newBalance","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"delegate(address)":"5c19a95c","delegateBySig(address,uint256,uint256,uint8,bytes32,bytes32)":"c3cda520","delegates(address)":"587cde1e","getPastTotalSupply(uint256)":"8e539e8c","getPastVotes(address,uint256)":"3a46b1a8","getVotes(address)":"9ab24eb0"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.15+commit.e14f2714\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"fromDelegate\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"toDelegate\",\"type\":\"address\"}],\"name\":\"DelegateChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegate\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"previousBalance\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newBalance\",\"type\":\"uint256\"}],\"name\":\"DelegateVotesChanged\",\"type\":\"event\"},{\"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\":\"account\",\"type\":\"address\"}],\"name\":\"delegates\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"}],\"name\":\"getPastTotalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"}],\"name\":\"getPastVotes\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"getVotes\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Common interface for {ERC20Votes}, {ERC721Votes}, and other {Votes}-enabled contracts. _Available since v4.5._\",\"events\":{\"DelegateChanged(address,address,address)\":{\"details\":\"Emitted when an account changes their delegate.\"},\"DelegateVotesChanged(address,uint256,uint256)\":{\"details\":\"Emitted when a token transfer or delegate change results in changes to a delegate's number of votes.\"}},\"kind\":\"dev\",\"methods\":{\"delegate(address)\":{\"details\":\"Delegates votes from the sender to `delegatee`.\"},\"delegateBySig(address,uint256,uint256,uint8,bytes32,bytes32)\":{\"details\":\"Delegates votes from signer to `delegatee`.\"},\"delegates(address)\":{\"details\":\"Returns the delegate that `account` has chosen.\"},\"getPastTotalSupply(uint256)\":{\"details\":\"Returns the total supply of votes available at the end of a past block (`blockNumber`). NOTE: This value is the sum of all available votes, which is not necessarily the sum of all delegated votes. Votes that have not been delegated are still part of total supply, even though they would not participate in a vote.\"},\"getPastVotes(address,uint256)\":{\"details\":\"Returns the amount of votes that `account` had at the end of a past block (`blockNumber`).\"},\"getVotes(address)\":{\"details\":\"Returns the current amount of votes that `account` has.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/openzeppelin-contracts/contracts/governance/utils/IVotes.sol\":\"IVotes\"},\"evmVersion\":\"london\",\"libraries\":{\"src/tokamak-contracts/USDC/L2/tokamak-USDC/v2/FiatTokenV2_2.sol:SignatureChecker\":\"0x4200000000000000000000000000000000000776\"},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":999999},\"remappings\":[\":@lib-keccak/=lib/lib-keccak/contracts/lib/\",\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/contracts_v3.1.0/=lib/openzeppelin-contracts_v3.1.0/contracts/\",\":@openzeppelin/contracts_v5.0.1/=lib/openzeppelin-contracts_v5.0.1/contracts/\",\":@rari-capital/solmate/=lib/solmate/\",\":@solady-test/=lib/lib-keccak/lib/solady/test/\",\":@solady/=lib/solady/src/\",\":automate/=lib/automate/contracts/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":erc4626-tests/=lib/openzeppelin-contracts_v5.0.1/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":gelato/=lib/automate/contracts/\",\":hardhat/=lib/automate/node_modules/hardhat/\",\":kontrol-cheatcodes/=lib/kontrol-cheatcodes/src/\",\":lib-keccak/=lib/lib-keccak/contracts/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-contracts_v3.1.0/=lib/openzeppelin-contracts_v3.1.0/contracts/\",\":openzeppelin-contracts_v5.0.1/=lib/openzeppelin-contracts_v5.0.1/\",\":prb-test/=lib/automate/lib/prb-test/src/\",\":prb/-est/=lib/automate/lib/prb-test/src/\",\":safe-contracts/=lib/safe-contracts/contracts/\",\":solady/=lib/solady/\",\":solmate/=lib/solmate/src/\"]},\"sources\":{\"lib/openzeppelin-contracts/contracts/governance/utils/IVotes.sol\":{\"keccak256\":\"0xf5324a55ee9c0b4a840ea57c055ac9d046f88986ceef567e1cf68113e46a79c0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f41fe2bddc33c17ccccfc25379b1869354e9ee62d8b28d2acc95229eeba37a86\",\"dweb:/ipfs/Qmb6SF2XL2uSvH6k5JSjtx4Xoqz41ACkhdAhtbW1Yh3RiY\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.15+commit.e14f2714"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"delegator","type":"address","indexed":true},{"internalType":"address","name":"fromDelegate","type":"address","indexed":true},{"internalType":"address","name":"toDelegate","type":"address","indexed":true}],"type":"event","name":"DelegateChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"delegate","type":"address","indexed":true},{"internalType":"uint256","name":"previousBalance","type":"uint256","indexed":false},{"internalType":"uint256","name":"newBalance","type":"uint256","indexed":false}],"type":"event","name":"DelegateVotesChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"delegate"},{"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"}],"stateMutability":"nonpayable","type":"function","name":"delegateBySig"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"delegates","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"stateMutability":"view","type":"function","name":"getPastTotalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"stateMutability":"view","type":"function","name":"getPastVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"getVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]}],"devdoc":{"kind":"dev","methods":{"delegate(address)":{"details":"Delegates votes from the sender to `delegatee`."},"delegateBySig(address,uint256,uint256,uint8,bytes32,bytes32)":{"details":"Delegates votes from signer to `delegatee`."},"delegates(address)":{"details":"Returns the delegate that `account` has chosen."},"getPastTotalSupply(uint256)":{"details":"Returns the total supply of votes available at the end of a past block (`blockNumber`). NOTE: This value is the sum of all available votes, which is not necessarily the sum of all delegated votes. Votes that have not been delegated are still part of total supply, even though they would not participate in a vote."},"getPastVotes(address,uint256)":{"details":"Returns the amount of votes that `account` had at the end of a past block (`blockNumber`)."},"getVotes(address)":{"details":"Returns the current amount of votes that `account` has."}},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@lib-keccak/=lib/lib-keccak/contracts/lib/","@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/contracts_v3.1.0/=lib/openzeppelin-contracts_v3.1.0/contracts/","@openzeppelin/contracts_v5.0.1/=lib/openzeppelin-contracts_v5.0.1/contracts/","@rari-capital/solmate/=lib/solmate/","@solady-test/=lib/lib-keccak/lib/solady/test/","@solady/=lib/solady/src/","automate/=lib/automate/contracts/","ds-test/=lib/forge-std/lib/ds-test/src/","erc4626-tests/=lib/openzeppelin-contracts_v5.0.1/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","gelato/=lib/automate/contracts/","hardhat/=lib/automate/node_modules/hardhat/","kontrol-cheatcodes/=lib/kontrol-cheatcodes/src/","lib-keccak/=lib/lib-keccak/contracts/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-contracts_v3.1.0/=lib/openzeppelin-contracts_v3.1.0/contracts/","openzeppelin-contracts_v5.0.1/=lib/openzeppelin-contracts_v5.0.1/","prb-test/=lib/automate/lib/prb-test/src/","prb/-est/=lib/automate/lib/prb-test/src/","safe-contracts/=lib/safe-contracts/contracts/","solady/=lib/solady/","solmate/=lib/solmate/src/"],"optimizer":{"enabled":true,"runs":999999},"metadata":{"bytecodeHash":"none"},"compilationTarget":{"lib/openzeppelin-contracts/contracts/governance/utils/IVotes.sol":"IVotes"},"evmVersion":"london","libraries":{"src/tokamak-contracts/USDC/L2/tokamak-USDC/v2/FiatTokenV2_2.sol:SignatureChecker":"0x4200000000000000000000000000000000000776"}},"sources":{"lib/openzeppelin-contracts/contracts/governance/utils/IVotes.sol":{"keccak256":"0xf5324a55ee9c0b4a840ea57c055ac9d046f88986ceef567e1cf68113e46a79c0","urls":["bzz-raw://f41fe2bddc33c17ccccfc25379b1869354e9ee62d8b28d2acc95229eeba37a86","dweb:/ipfs/Qmb6SF2XL2uSvH6k5JSjtx4Xoqz41ACkhdAhtbW1Yh3RiY"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[],"types":{}},"userdoc":{"version":1,"kind":"user"},"devdoc":{"version":1,"kind":"dev","details":"Common interface for {ERC20Votes}, {ERC721Votes}, and other {Votes}-enabled contracts. _Available since v4.5._","methods":{"delegate(address)":{"details":"Delegates votes from the sender to `delegatee`."},"delegateBySig(address,uint256,uint256,uint8,bytes32,bytes32)":{"details":"Delegates votes from signer to `delegatee`."},"delegates(address)":{"details":"Returns the delegate that `account` has chosen."},"getPastTotalSupply(uint256)":{"details":"Returns the total supply of votes available at the end of a past block (`blockNumber`). NOTE: This value is the sum of all available votes, which is not necessarily the sum of all delegated votes. Votes that have not been delegated are still part of total supply, even though they would not participate in a vote."},"getPastVotes(address,uint256)":{"details":"Returns the amount of votes that `account` had at the end of a past block (`blockNumber`)."},"getVotes(address)":{"details":"Returns the current amount of votes that `account` has."}},"events":{"DelegateChanged(address,address,address)":{"details":"Emitted when an account changes their delegate."},"DelegateVotesChanged(address,uint256,uint256)":{"details":"Emitted when a token transfer or delegate change results in changes to a delegate's number of votes."}}},"ast":{"absolutePath":"lib/openzeppelin-contracts/contracts/governance/utils/IVotes.sol","id":50125,"exportedSymbols":{"IVotes":[50124]},"nodeType":"SourceUnit","src":"110:1954:46","nodes":[{"id":50048,"nodeType":"PragmaDirective","src":"110:23:46","nodes":[],"literals":["solidity","^","0.8",".0"]},{"id":50124,"nodeType":"ContractDefinition","src":"268:1795:46","nodes":[{"id":50058,"nodeType":"EventDefinition","src":"367:107:46","nodes":[],"anonymous":false,"documentation":{"id":50050,"nodeType":"StructuredDocumentation","src":"291:71:46","text":" @dev Emitted when an account changes their delegate."},"eventSelector":"3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f","name":"DelegateChanged","nameLocation":"373:15:46","parameters":{"id":50057,"nodeType":"ParameterList","parameters":[{"constant":false,"id":50052,"indexed":true,"mutability":"mutable","name":"delegator","nameLocation":"405:9:46","nodeType":"VariableDeclaration","scope":50058,"src":"389:25:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":50051,"name":"address","nodeType":"ElementaryTypeName","src":"389:7:46","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":50054,"indexed":true,"mutability":"mutable","name":"fromDelegate","nameLocation":"432:12:46","nodeType":"VariableDeclaration","scope":50058,"src":"416:28:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":50053,"name":"address","nodeType":"ElementaryTypeName","src":"416:7:46","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":50056,"indexed":true,"mutability":"mutable","name":"toDelegate","nameLocation":"462:10:46","nodeType":"VariableDeclaration","scope":50058,"src":"446:26:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":50055,"name":"address","nodeType":"ElementaryTypeName","src":"446:7:46","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"388:85:46"}},{"id":50067,"nodeType":"EventDefinition","src":"609:98:46","nodes":[],"anonymous":false,"documentation":{"id":50059,"nodeType":"StructuredDocumentation","src":"480:124:46","text":" @dev Emitted when a token transfer or delegate change results in changes to a delegate's number of votes."},"eventSelector":"dec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a724","name":"DelegateVotesChanged","nameLocation":"615:20:46","parameters":{"id":50066,"nodeType":"ParameterList","parameters":[{"constant":false,"id":50061,"indexed":true,"mutability":"mutable","name":"delegate","nameLocation":"652:8:46","nodeType":"VariableDeclaration","scope":50067,"src":"636:24:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":50060,"name":"address","nodeType":"ElementaryTypeName","src":"636:7:46","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":50063,"indexed":false,"mutability":"mutable","name":"previousBalance","nameLocation":"670:15:46","nodeType":"VariableDeclaration","scope":50067,"src":"662:23:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":50062,"name":"uint256","nodeType":"ElementaryTypeName","src":"662:7:46","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":50065,"indexed":false,"mutability":"mutable","name":"newBalance","nameLocation":"695:10:46","nodeType":"VariableDeclaration","scope":50067,"src":"687:18:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":50064,"name":"uint256","nodeType":"ElementaryTypeName","src":"687:7:46","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"635:71:46"}},{"id":50075,"nodeType":"FunctionDefinition","src":"797:67:46","nodes":[],"documentation":{"id":50068,"nodeType":"StructuredDocumentation","src":"713:79:46","text":" @dev Returns the current amount of votes that `account` has."},"functionSelector":"9ab24eb0","implemented":false,"kind":"function","modifiers":[],"name":"getVotes","nameLocation":"806:8:46","parameters":{"id":50071,"nodeType":"ParameterList","parameters":[{"constant":false,"id":50070,"mutability":"mutable","name":"account","nameLocation":"823:7:46","nodeType":"VariableDeclaration","scope":50075,"src":"815:15:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":50069,"name":"address","nodeType":"ElementaryTypeName","src":"815:7:46","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"814:17:46"},"returnParameters":{"id":50074,"nodeType":"ParameterList","parameters":[{"constant":false,"id":50073,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":50075,"src":"855:7:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":50072,"name":"uint256","nodeType":"ElementaryTypeName","src":"855:7:46","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"854:9:46"},"scope":50124,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":50085,"nodeType":"FunctionDefinition","src":"989:92:46","nodes":[],"documentation":{"id":50076,"nodeType":"StructuredDocumentation","src":"870:114:46","text":" @dev Returns the amount of votes that `account` had at the end of a past block (`blockNumber`)."},"functionSelector":"3a46b1a8","implemented":false,"kind":"function","modifiers":[],"name":"getPastVotes","nameLocation":"998:12:46","parameters":{"id":50081,"nodeType":"ParameterList","parameters":[{"constant":false,"id":50078,"mutability":"mutable","name":"account","nameLocation":"1019:7:46","nodeType":"VariableDeclaration","scope":50085,"src":"1011:15:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":50077,"name":"address","nodeType":"ElementaryTypeName","src":"1011:7:46","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":50080,"mutability":"mutable","name":"blockNumber","nameLocation":"1036:11:46","nodeType":"VariableDeclaration","scope":50085,"src":"1028:19:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":50079,"name":"uint256","nodeType":"ElementaryTypeName","src":"1028:7:46","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1010:38:46"},"returnParameters":{"id":50084,"nodeType":"ParameterList","parameters":[{"constant":false,"id":50083,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":50085,"src":"1072:7:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":50082,"name":"uint256","nodeType":"ElementaryTypeName","src":"1072:7:46","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1071:9:46"},"scope":50124,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":50093,"nodeType":"FunctionDefinition","src":"1457:81:46","nodes":[],"documentation":{"id":50086,"nodeType":"StructuredDocumentation","src":"1087:365:46","text":" @dev Returns the total supply of votes available at the end of a past block (`blockNumber`).\n NOTE: This value is the sum of all available votes, which is not necessarily the sum of all delegated votes.\n Votes that have not been delegated are still part of total supply, even though they would not participate in a\n vote."},"functionSelector":"8e539e8c","implemented":false,"kind":"function","modifiers":[],"name":"getPastTotalSupply","nameLocation":"1466:18:46","parameters":{"id":50089,"nodeType":"ParameterList","parameters":[{"constant":false,"id":50088,"mutability":"mutable","name":"blockNumber","nameLocation":"1493:11:46","nodeType":"VariableDeclaration","scope":50093,"src":"1485:19:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":50087,"name":"uint256","nodeType":"ElementaryTypeName","src":"1485:7:46","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1484:21:46"},"returnParameters":{"id":50092,"nodeType":"ParameterList","parameters":[{"constant":false,"id":50091,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":50093,"src":"1529:7:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":50090,"name":"uint256","nodeType":"ElementaryTypeName","src":"1529:7:46","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1528:9:46"},"scope":50124,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":50101,"nodeType":"FunctionDefinition","src":"1620:68:46","nodes":[],"documentation":{"id":50094,"nodeType":"StructuredDocumentation","src":"1544:71:46","text":" @dev Returns the delegate that `account` has chosen."},"functionSelector":"587cde1e","implemented":false,"kind":"function","modifiers":[],"name":"delegates","nameLocation":"1629:9:46","parameters":{"id":50097,"nodeType":"ParameterList","parameters":[{"constant":false,"id":50096,"mutability":"mutable","name":"account","nameLocation":"1647:7:46","nodeType":"VariableDeclaration","scope":50101,"src":"1639:15:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":50095,"name":"address","nodeType":"ElementaryTypeName","src":"1639:7:46","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1638:17:46"},"returnParameters":{"id":50100,"nodeType":"ParameterList","parameters":[{"constant":false,"id":50099,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":50101,"src":"1679:7:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":50098,"name":"address","nodeType":"ElementaryTypeName","src":"1679:7:46","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1678:9:46"},"scope":50124,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":50107,"nodeType":"FunctionDefinition","src":"1770:46:46","nodes":[],"documentation":{"id":50102,"nodeType":"StructuredDocumentation","src":"1694:71:46","text":" @dev Delegates votes from the sender to `delegatee`."},"functionSelector":"5c19a95c","implemented":false,"kind":"function","modifiers":[],"name":"delegate","nameLocation":"1779:8:46","parameters":{"id":50105,"nodeType":"ParameterList","parameters":[{"constant":false,"id":50104,"mutability":"mutable","name":"delegatee","nameLocation":"1796:9:46","nodeType":"VariableDeclaration","scope":50107,"src":"1788:17:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":50103,"name":"address","nodeType":"ElementaryTypeName","src":"1788:7:46","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1787:19:46"},"returnParameters":{"id":50106,"nodeType":"ParameterList","parameters":[],"src":"1815:0:46"},"scope":50124,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":50123,"nodeType":"FunctionDefinition","src":"1894:167:46","nodes":[],"documentation":{"id":50108,"nodeType":"StructuredDocumentation","src":"1822:67:46","text":" @dev Delegates votes from signer to `delegatee`."},"functionSelector":"c3cda520","implemented":false,"kind":"function","modifiers":[],"name":"delegateBySig","nameLocation":"1903:13:46","parameters":{"id":50121,"nodeType":"ParameterList","parameters":[{"constant":false,"id":50110,"mutability":"mutable","name":"delegatee","nameLocation":"1934:9:46","nodeType":"VariableDeclaration","scope":50123,"src":"1926:17:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":50109,"name":"address","nodeType":"ElementaryTypeName","src":"1926:7:46","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":50112,"mutability":"mutable","name":"nonce","nameLocation":"1961:5:46","nodeType":"VariableDeclaration","scope":50123,"src":"1953:13:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":50111,"name":"uint256","nodeType":"ElementaryTypeName","src":"1953:7:46","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":50114,"mutability":"mutable","name":"expiry","nameLocation":"1984:6:46","nodeType":"VariableDeclaration","scope":50123,"src":"1976:14:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":50113,"name":"uint256","nodeType":"ElementaryTypeName","src":"1976:7:46","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":50116,"mutability":"mutable","name":"v","nameLocation":"2006:1:46","nodeType":"VariableDeclaration","scope":50123,"src":"2000:7:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":50115,"name":"uint8","nodeType":"ElementaryTypeName","src":"2000:5:46","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":50118,"mutability":"mutable","name":"r","nameLocation":"2025:1:46","nodeType":"VariableDeclaration","scope":50123,"src":"2017:9:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":50117,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2017:7:46","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":50120,"mutability":"mutable","name":"s","nameLocation":"2044:1:46","nodeType":"VariableDeclaration","scope":50123,"src":"2036:9:46","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":50119,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2036:7:46","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1916:135:46"},"returnParameters":{"id":50122,"nodeType":"ParameterList","parameters":[],"src":"2060:0:46"},"scope":50124,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IVotes","contractDependencies":[],"contractKind":"interface","documentation":{"id":50049,"nodeType":"StructuredDocumentation","src":"135:132:46","text":" @dev Common interface for {ERC20Votes}, {ERC721Votes}, and other {Votes}-enabled contracts.\n _Available since v4.5._"},"fullyImplemented":false,"linearizedBaseContracts":[50124],"name":"IVotes","nameLocation":"278:6:46","scope":50125,"usedErrors":[]}],"license":"MIT"},"id":46}