16 txs
85 calls
constructor
constructor(address __ve, address _attach, address __minter)
functions
attach
viewfunction attach() view returns (address)
epochTimestamp
viewfunction epochTimestamp() view returns (uint256)
gaugeForPool
viewfunction gaugeForPool(address pool) view returns (address)
isManager
viewfunction isManager(address manager) view returns (bool)
isPool
viewfunction isPool(address pool) view returns (bool)
minter
viewfunction minter() view returns (address)
owner
viewfunction owner() view returns (address)
paused
viewfunction paused() view returns (bool)
poolData
viewfunction poolData(address pool) view returns (tuple)
poolPosition
viewfunction poolPosition(address pool) view returns (uint256 pos)
pools
viewfunction pools() view returns (address[])
pools
viewfunction pools(uint256 from, uint256 to) view returns (address[] _pools)
pools
viewfunction pools(uint256 pos) view returns (address)
poolsLength
viewfunction poolsLength() view returns (uint256)
poolTotalWeights
viewfunction poolTotalWeights(address pool, uint256 timestamp) view returns (uint256)
tokenIdVotes
viewfunction tokenIdVotes(uint256 _tokenId, uint256 timestamp) view returns (tuple)
totalWeights
viewfunction totalWeights(uint256 timestamp) view returns (uint256)
ve
viewfunction ve() view returns (address)
votingIncentivesForPool
viewfunction votingIncentivesForPool(address pool) view returns (address)
addPoolData
nonpayablefunction addPoolData(address pool, address gauge, address votingIncentives)
banPool
nonpayablefunction banPool(address pool)
pause
nonpayablefunction pause(bool status)
poke
nonpayablefunction poke(uint256 _tokenId)
removePoolData
nonpayablefunction removePoolData(address pool)
renounceOwnership
nonpayablefunction renounceOwnership()
reset
nonpayablefunction reset(uint256 _tokenId)
revivePool
nonpayablefunction revivePool(address pool)
setManagerStatus
nonpayablefunction setManagerStatus(address manager, bool status)
setMinter
nonpayablefunction setMinter(address _mint)
setVeTHE
nonpayablefunction setVeTHE(address _veTHE)
setVotingEscrowAttach
nonpayablefunction setVotingEscrowAttach(address _att)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
vote
nonpayablefunction vote(uint256 _tokenId, address[] _pools, uint256[] _weights)
events
AddPool
event AddPool(address indexed pool, address gauge, address votingIncentives)
BanPool
event BanPool(address indexed pool)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
Paused
event Paused(address account)
RemovePool
event RemovePool(address indexed pool)
Reset
event Reset(address voter, uint256 indexed tokenId, uint256 timestamp)
RevivePool
event RevivePool(address indexed pool)
SetManagerStatus
event SetManagerStatus(address indexed manager, bool stauts)
SetMinter
event SetMinter(address indexed minter)
SetVeTHE
event SetVeTHE(address indexed ve)
SetVotingEscrowAttach
event SetVotingEscrowAttach(address indexed vea)
Unpaused
event Unpaused(address account)
Vote
event Vote(address voter, uint256 indexed tokenId, uint256 timestamp)
errors
AddressZero
error AddressZero()
InputMismatch
error InputMismatch()
MaxSingleWeight
error MaxSingleWeight()
NotManager
error NotManager()
NotOwnerOrApproved
error NotOwnerOrApproved()
NotPool
error NotPool(address pool)
NoVotesAvailable
error NoVotesAvailable(uint256 timestamp)
PoolExists
error PoolExists()
PoolNotExists
error PoolNotExists()
PoolWeightZero
error PoolWeightZero()
TotalWeightZero
error TotalWeightZero()
creation bytecode
0x60806040523480156200001157600080fd5b5060405162002ab638038062002ab6833981016040819052620000349162000193565b6200003f3362000126565b6000805460ff60a01b191690556001600160a01b0383166200007457604051639fabe1c160e01b815260040160405180910390fd5b6001600160a01b0381166200009c57604051639fabe1c160e01b815260040160405180910390fd5b6001600160a01b038216620000c457604051639fabe1c160e01b815260040160405180910390fd5b600a80546001600160a01b03199081166001600160a01b039586161790915560098054821692851692909217909155600b8054909116918316919091179055600080549091168152600860205260409020805460ff19166001179055620001dd565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80516001600160a01b03811681146200018e57600080fd5b919050565b600080600060608486031215620001a957600080fd5b620001b48462000176565b9250620001c46020850162000176565b9150620001d46040850162000176565b90509250925092565b6128c980620001ed6000396000f3fe608060405234801561001057600080fd5b506004361061020b5760003560e01c80636103ed2e1161012a578063ac4afa38116100bd578063c5c51dca1161008c578063f2fde38b11610071578063f2fde38b1461052d578063f3ae241514610540578063fca3b5aa1461056c57600080fd5b8063c5c51dca14610512578063e98470ed1461051a57600080fd5b8063ac4afa381461049d578063ac9eb5f5146104b0578063b62e1efc146104df578063c42b36ad146104ff57600080fd5b80637ac09bf7116100f95780637ac09bf7146104465780638da5cb5b146104595780638ef74f6c1461046a578063a52959231461047d57600080fd5b80636103ed2e146103ed57806370055e9e146103f5578063715018a61461041e5780637450e2de1461042657600080fd5b80632045be90116101a2578063405056181161017157806340505618146103925780634ada282a146103a55780635b16ebb7146103b85780635c975abb146103db57600080fd5b80632045be90146103385780632716ae6614610364578063310bd74b1461036c57806332145f901461037f57600080fd5b8063136efb7a116101de578063136efb7a14610275578063168e30f5146102f35780631aaaea37146103145780631f8507161461032757600080fd5b806302329a29146102105780630305a8851461022557806307546172146102385780631100482d14610262575b600080fd5b61022361021e36600461248f565b61057f565b005b6102236102333660046124cf565b61059f565b6009546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b600b54610245906001600160a01b031681565b6102cc6102833660046124cf565b604080518082018252600080825260209182018190526001600160a01b039384168152600582528290208251808401909352805484168352600101549092169181019190915290565b6040805182516001600160a01b039081168252602093840151169281019290925201610259565b6103066103013660046124ea565b610640565b604051908152602001610259565b610223610322366004612514565b61066b565b600a546001600160a01b0316610245565b6102456103463660046124cf565b6001600160a01b039081166000908152600560205260409020541690565b600154610306565b61022361037a366004612557565b6108bf565b61022361038d366004612557565b610960565b6102236103a03660046124cf565b610f6d565b6102236103b33660046124cf565b61100e565b6103cb6103c63660046124cf565b6110c0565b6040519015158152602001610259565b600054600160a01b900460ff166103cb565b6103066110f1565b6103066104033660046124cf565b6001600160a01b031660009081526006602052604090205490565b610223611100565b610439610434366004612570565b611114565b6040516102599190612592565b61022361045436600461262b565b6111e8565b6000546001600160a01b0316610245565b6102236104783660046126a5565b6112b3565b61049061048b366004612570565b611341565b6040516102599190612721565b6102456104ab366004612557565b611458565b6102456104be3660046124cf565b6001600160a01b039081166000908152600560205260409020600101541690565b6103066104ed366004612557565b60009081526003602052604090205490565b61022361050d3660046124cf565b611488565b610439611677565b6102236105283660046124cf565b6116d9565b61022361053b3660046124cf565b61178f565b6103cb61054e3660046124cf565b6001600160a01b031660009081526008602052604090205460ff1690565b61022361057a3660046124cf565b61181c565b6105876118bd565b8061059757610594611917565b50565b61059461196c565b3360009081526008602052604090205460ff166105cf5760405163607e454560e11b815260040160405180910390fd5b6001600160a01b0381166105f657604051639fabe1c160e01b815260040160405180910390fd5b600b80546001600160a01b0319166001600160a01b0383169081179091556040517ff850ffc7ea35826b0257d59e91da35757d43b19b7ad3de7ac134e85215587e5590600090a250565b6001600160a01b03821660009081526004602090815260408083208484529091529020545b92915050565b3360009081526008602052604090205460ff1661069b5760405163607e454560e11b815260040160405180910390fd5b6001600160a01b0383166106c257604051639fabe1c160e01b815260040160405180910390fd5b6001600160a01b0382166106e957604051639fabe1c160e01b815260040160405180910390fd5b6001600160a01b03811661071057604051639fabe1c160e01b815260040160405180910390fd5b6001600160a01b03831660009081526007602052604090205460ff161561074a57604051637a471e1360e11b815260040160405180910390fd5b6040805180820182526001600160a01b0380851682528381166020808401918252878316600081815260058352868120955186549086166001600160a01b031991821617875593516001968701805491909616908516179094556007909152938220805460ff19168417905582548084018455918390527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6909101805490911690921790915580546107fc91906127bc565b6001600160a01b0384166000908152600660205260408120919091556108206119af565b6001600160a01b03851660009081526004602090815260408083208484529091529020549091508015610871576000828152600360205260408120805483929061086b9084906127cf565b90915550505b604080516001600160a01b03868116825285811660208301528716917fe5fa92066fe577ed687637838bf5788f2bd83ebde9bf2a02abd8080ecfbc2d65910160405180910390a25050505050565b6108c7611a1d565b600a5460405163430c208160e01b8152336004820152602481018390526001600160a01b039091169063430c208190604401602060405180830381865afa158015610916573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061093a91906127e2565b61095757604051636d8a29e760e11b815260040160405180910390fd5b61059481611a77565b610968611a1d565b600a5460405163430c208160e01b8152336004820152602481018390526001600160a01b039091169063430c208190604401602060405180830381865afa1580156109b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109db91906127e2565b6109f857604051636d8a29e760e11b815260040160405180910390fd5b6000610a026119af565b60008381526002602052604081209192509081610a2262093a80856127bc565b8152602001908152602001600020604051806080016040529081600082015481526020016001820154815260200160028201805480602002602001604051908101604052809291908181526020018280548015610a9e57602002820191906000526020600020905b815481526020019060010190808311610a8a575b5050505050815260200160038201805480602002602001604051908101604052809291908181526020018280548015610b0057602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610ae2575b505050919092525050506060810151604082015181519293509091600003610b5457610b2f62093a80856127bc565b60405163752eca3560e01b8152600401610b4b91815260200190565b60405180910390fd5b610b5d85611a77565b6020830151600a546040516339f890b560e21b8152600481018890526000916001600160a01b03169063e7e242d490602401602060405180830381865afa158015610bac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bd091906127ff565b60408051808201909152600080825260208201819052919250819084600003610c0c5760405163d666c84560e01b815260040160405180910390fd5b8651831015610e115760076000888581518110610c2b57610c2b612818565b6020908102919091018101516001600160a01b031682528101919091526040016000205460ff16610c9957868381518110610c6857610c68612818565b602002602001015160405163250abb5160e11b8152600401610b4b91906001600160a01b0391909116815260200190565b8484878581518110610cad57610cad612818565b6020026020010151610cbf919061282e565b610cc99190612845565b915081600003610cec576040516336a06b1360e21b815260040160405180910390fd5b8160046000898681518110610d0357610d03612818565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060008b81526020019081526020016000206000828254610d4b91906127cf565b9250508190555060056000888581518110610d6857610d68612818565b6020908102919091018101516001600160a01b039081168352828201939093526040918201600020825180840184528154851681526001909101549093169083018190529051631c57762b60e31b815260048101859052602481018d90529192509063e2bbb15890604401600060405180830381600087803b158015610ded57600080fd5b505af1158015610e01573d6000803e3d6000fd5b505060019094019350610c0c9050565b604051806080016040528085815260200186815260200187815260200188815250600260008c815260200190815260200160002060008b815260200190815260200160002060008201518160000155602082015181600101556040820151816002019080519060200190610e869291906123b2565b5060608201518051610ea29160038401916020909101906123fd565b50505060008981526003602052604081208054869290610ec39084906127cf565b9091555050600b5460405163fd4a77f160e01b8152600481018c90526001600160a01b039091169063fd4a77f190602401600060405180830381600087803b158015610f0e57600080fd5b505af1158015610f22573d6000803e3d6000fd5b505060408051338152602081018d90528d93507fafd3f234c1f8e944129b26b206d98e5752ad3336a4059938b4a3e990e958853092500160405180910390a250505050505050505050565b3360009081526008602052604090205460ff16610f9d5760405163607e454560e11b815260040160405180910390fd5b6001600160a01b038116610fc457604051639fabe1c160e01b815260040160405180910390fd5b600a80546001600160a01b0319166001600160a01b0383169081179091556040517fd0d5ea94cd49e02322e6b063a8bb973906359789fa370a54261e226b9592b5e290600090a250565b3360009081526008602052604090205460ff1661103e5760405163607e454560e11b815260040160405180910390fd5b6001600160a01b03811660009081526007602052604090205460ff16611077576040516302ea63c760e21b815260040160405180910390fd5b6001600160a01b038116600081815260076020526040808220805460ff19169055517fd0d5ea94cd49e02322e6b063a8bb973906359789fa370a54261e226b9592b5e29190a250565b6001600160a01b03811660009081526007602052604081205460ff16156110e957506001919050565b506000919050565b60006110fb6119af565b905090565b6111086118bd565b6111126000611e17565b565b6060600061112284846127bc565b90508067ffffffffffffffff81111561113d5761113d612867565b604051908082528060200260200182016040528015611166578160200160208202803683370190505b50915060005b818110156111e057600161118082876127cf565b8154811061119057611190612818565b9060005260206000200160009054906101000a90046001600160a01b03168382815181106111c0576111c0612818565b6001600160a01b039092166020928302919091019091015260010161116c565b505092915050565b6111f0611a1d565b600a5460405163430c208160e01b8152336004820152602481018790526001600160a01b039091169063430c208190604401602060405180830381865afa15801561123f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061126391906127e2565b61128057604051636d8a29e760e11b815260040160405180910390fd5b82811461129f5760405162a80fb560e51b815260040160405180910390fd5b6112ac8585858585611e67565b5050505050565b6112bb6118bd565b6001600160a01b0382166112e257604051639fabe1c160e01b815260040160405180910390fd5b6001600160a01b038216600081815260086020908152604091829020805460ff191685151590811790915591519182527f2c0e460d92a73502decde52c29ae030dd8872be648a35b2b71fd47725c3a8c5a910160405180910390a25050565b61136c6040518060800160405280600081526020016000815260200160608152602001606081525090565b60008381526002602081815260408084208685528252928390208351608081018552815481526001820154818401529281018054855181850281018501875281815294959294928601938301828280156113e557602002820191906000526020600020905b8154815260200190600101908083116113d1575b505050505081526020016003820180548060200260200160405190810160405280929190818152602001828054801561144757602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611429575b505050505081525050905092915050565b60006001828154811061146d5761146d612818565b6000918252602090912001546001600160a01b031692915050565b3360009081526008602052604090205460ff166114b85760405163607e454560e11b815260040160405180910390fd5b6001600160a01b03811660009081526007602052604090205460ff166114f1576040516302ea63c760e21b815260040160405180910390fd5b60006114fb6119af565b6001600160a01b0383166000908152600460209081526040808320848452909152902054909150801561154c57600082815260036020526040812080548392906115469084906127bc565b90915550505b600180546000919061155f9082906127bc565b8154811061156f5761156f612818565b60009182526020808320909101546001600160a01b038781168452600690925260409092205460018054929093169350918391839081106115b2576115b2612818565b600091825260208083209190910180546001600160a01b0319166001600160a01b03948516179055878316825260069052604080822082905591841681522081905560018054806116055761160561287d565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03871680835260079091526040808320805460ff191690555190917f0719c8bc6522957e7735717af2894124fbc9096cf04b5bfaabcff5157790876591a25050505050565b606060018054806020026020016040519081016040528092919081815260200182805480156116cf57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116116b1575b5050505050905090565b3360009081526008602052604090205460ff166117095760405163607e454560e11b815260040160405180910390fd5b6001600160a01b03811660009081526007602052604090205460ff161561174357604051637a471e1360e11b815260040160405180910390fd5b6001600160a01b038116600081815260076020526040808220805460ff19166001179055517f1201338058da8a5c7cb6da92ee0dd23d5a813f82564aaa9b8371d36e9f779a079190a250565b6117976118bd565b6001600160a01b0381166118135760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610b4b565b61059481611e17565b3360009081526008602052604090205460ff1661184c5760405163607e454560e11b815260040160405180910390fd5b6001600160a01b03811661187357604051639fabe1c160e01b815260040160405180910390fd5b600980546001600160a01b0319166001600160a01b0383169081179091556040517fcec52196e972044edde8689a1b608e459c5946b7f3e5c8cd3d6d8e126d422e1c90600090a250565b6000546001600160a01b031633146111125760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610b4b565b61191f612359565b6000805460ff60a01b191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b611974611a1d565b6000805460ff60a01b1916600160a01b1790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861194f3390565b60095460408051631a2732c160e31b815290516000926001600160a01b03169163d13996089160048083019260209291908290030181865afa1580156119f9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110fb91906127ff565b600054600160a01b900460ff16156111125760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610b4b565b6000611a816119af565b600083815260026020818152604080842085855282528084208151608081018352815481526001820154818501529381018054835181860281018601855281815297985095969495919492860193909190830182828015611b0157602002820191906000526020600020905b815481526020019060010190808311611aed575b5050505050815260200160038201805480602002602001604051908101604052809291908181526020018280548015611b6357602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611b45575b5050509190925250506040805180820190915260008082526020820152919250611b8a9050565b602082015115611d7857815160008481526003602052604081208054909190611bb49084906127bc565b9091555060009050805b836060015151811015611d3457602084015184516040860151805184908110611be957611be9612818565b6020026020010151611bfb919061282e565b611c059190612845565b9150816004600086606001518481518110611c2257611c22612818565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060008781526020019081526020016000206000828254611c6a91906127bc565b925050819055506005600085606001518381518110611c8b57611c8b612818565b6020908102919091018101516001600160a01b039081168352828201939093526040918201600020825180840184528154851681526001909101549093169083018190529051630441a3e760e41b815260048101859052602481018990529194509063441a3e7090604401600060405180830381600087803b158015611d1057600080fd5b505af1158015611d24573d6000803e3d6000fd5b505060019092019150611bbe9050565b60008681526002602081815260408084208985529091528220828155600181018390559190611d6590830182612452565b611d73600383016000612452565b505050505b600b5460405163c1f0fb9f60e01b8152600481018690526001600160a01b039091169063c1f0fb9f90602401600060405180830381600087803b158015611dbe57600080fd5b505af1158015611dd2573d6000803e3d6000fd5b505060408051338152602081018790528793507ff054db3316438c563ccda1bcd9cc2c2c54b88f26c0248b5cfd017aa2111cf13392500160405180910390a250505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b611e7085611a77565b600a546040516339f890b560e21b81526004810187905260009182916001600160a01b039091169063e7e242d490602401602060405180830381865afa158015611ebe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ee291906127ff565b90506000611eee6119af565b9050600080805b88831015611fc657600760008b8b86818110611f1357611f13612818565b9050602002016020810190611f2891906124cf565b6001600160a01b0316815260208101919091526040016000205460ff16611f9557898984818110611f5b57611f5b612818565b9050602002016020810190611f7091906124cf565b60405163250abb5160e11b81526001600160a01b039091166004820152602401610b4b565b878784818110611fa757611fa7612818565b9050602002013586611fb991906127cf565b9550600190920191611ef5565b85600003611fe75760405163d666c84560e01b815260040160405180910390fd5b600092505b888310156121af5761271088888581811061200957612009612818565b90506020020135111561202f57604051636948bec160e11b815260040160405180910390fd5b858589898681811061204357612043612818565b90506020020135612054919061282e565b61205e9190612845565b915081600003612081576040516336a06b1360e21b815260040160405180910390fd5b61208b82826127cf565b905081600460008c8c878181106120a4576120a4612818565b90506020020160208101906120b991906124cf565b6001600160a01b03166001600160a01b03168152602001908152602001600020600086815260200190815260200160002060008282546120f991906127cf565b909155506005905060008b8b8681811061211557612115612818565b905060200201602081019061212a91906124cf565b6001600160a01b03908116825260208201929092526040908101600020600101549051631c57762b60e31b815260048101859052602481018e905291169063e2bbb15890604401600060405180830381600087803b15801561218b57600080fd5b505af115801561219f573d6000803e3d6000fd5b505060019094019350611fec9050565b60405180608001604052808681526020018781526020018989808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152505050908252506040805160208d810282810182019093528d82529283019290918e918e91829185019084908082843760009201829052509390945250508d81526002602081815260408084208a85528252928390208551815585820151600182015592850151805193945061227193928501929101906123b2565b506060820151805161228d9160038401916020909101906123fd565b505050600084815260036020526040812080548792906122ae9084906127cf565b9091555050600b5460405163fd4a77f160e01b8152600481018d90526001600160a01b039091169063fd4a77f190602401600060405180830381600087803b1580156122f957600080fd5b505af115801561230d573d6000803e3d6000fd5b505060408051338152602081018890528e93507fafd3f234c1f8e944129b26b206d98e5752ad3336a4059938b4a3e990e958853092500160405180910390a25050505050505050505050565b600054600160a01b900460ff166111125760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610b4b565b8280548282559060005260206000209081019282156123ed579160200282015b828111156123ed5782518255916020019190600101906123d2565b506123f992915061246c565b5090565b8280548282559060005260206000209081019282156123ed579160200282015b828111156123ed57825182546001600160a01b0319166001600160a01b0390911617825560209092019160019091019061241d565b508054600082559060005260206000209081019061059491905b5b808211156123f9576000815560010161246d565b801515811461059457600080fd5b6000602082840312156124a157600080fd5b81356124ac81612481565b9392505050565b80356001600160a01b03811681146124ca57600080fd5b919050565b6000602082840312156124e157600080fd5b6124ac826124b3565b600080604083850312156124fd57600080fd5b612506836124b3565b946020939093013593505050565b60008060006060848603121561252957600080fd5b612532846124b3565b9250612540602085016124b3565b915061254e604085016124b3565b90509250925092565b60006020828403121561256957600080fd5b5035919050565b6000806040838503121561258357600080fd5b50508035926020909101359150565b6020808252825182820181905260009190848201906040850190845b818110156125d35783516001600160a01b0316835292840192918401916001016125ae565b50909695505050505050565b60008083601f8401126125f157600080fd5b50813567ffffffffffffffff81111561260957600080fd5b6020830191508360208260051b850101111561262457600080fd5b9250929050565b60008060008060006060868803121561264357600080fd5b85359450602086013567ffffffffffffffff8082111561266257600080fd5b61266e89838a016125df565b9096509450604088013591508082111561268757600080fd5b50612694888289016125df565b969995985093965092949392505050565b600080604083850312156126b857600080fd5b6126c1836124b3565b915060208301356126d181612481565b809150509250929050565b60008151808452602080850194506020840160005b838110156127165781516001600160a01b0316875295820195908201906001016126f1565b509495945050505050565b6000602080835260a0830184518285015281850151604085015260408501516080606086015281815180845260c0870191508483019350600092505b8083101561277d578351825292840192600192909201919084019061275d565b506060870151868203601f19016080880152935061279b81856126dc565b979650505050505050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610665576106656127a6565b80820180821115610665576106656127a6565b6000602082840312156127f457600080fd5b81516124ac81612481565b60006020828403121561281157600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b8082028115828204841417610665576106656127a6565b60008261286257634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603160045260246000fdfea2646970667358221220605d567a8f822cac4921382a192ee53b5e6db9b0008de7d04b5a8342ea1c4ed964736f6c63430008160033000000000000000000000000fbbf371c9b0b994eebfcc977cef603f7f31c070d0000000000000000000000008aebed1f28a8ae1eb6479ddd8b1148da0e05b58d00000000000000000000000086069feb223ee303085a1a505892c9d4bdbee996