[{"inputs":[{"internalType":"contract IParams","name":"params_","type":"address"},{"internalType":"contract IEpochs","name":"epochs_","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"verifier","type":"address"},{"internalType":"uint256","name":"epoch","type":"uint256"}],"name":"AlreadyParticipated","type":"error"},{"inputs":[{"internalType":"uint8","name":"condition","type":"uint8"}],"name":"GateNotSatisfied","type":"error"},{"inputs":[{"internalType":"address","name":"issuer","type":"address"}],"name":"IssuerUnknown","type":"error"},{"inputs":[{"internalType":"address","name":"caller","type":"address"},{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"NotAuthorised","type":"error"},{"inputs":[{"internalType":"bytes32","name":"expected","type":"bytes32"},{"internalType":"bytes32","name":"presented","type":"bytes32"}],"name":"ParameterHashMismatch","type":"error"},{"inputs":[{"internalType":"bytes32","name":"hash","type":"bytes32"}],"name":"SetNotActive","type":"error"},{"inputs":[{"internalType":"string","name":"field","type":"string"}],"name":"UnsoundParameter","type":"error"},{"inputs":[],"name":"ZeroAddress","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"candidate","type":"bytes32"},{"indexed":true,"internalType":"address","name":"who","type":"address"}],"name":"Endorsed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"candidate","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"base","type":"bytes32"},{"indexed":true,"internalType":"uint256","name":"epoch","type":"uint256"}],"name":"Proposed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"candidate","type":"bytes32"},{"indexed":true,"internalType":"address","name":"issuer","type":"address"},{"indexed":false,"internalType":"uint256","name":"liability","type":"uint256"}],"name":"Signalled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"endorsements","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"observation","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"signalPpm","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"bandPpm","type":"uint256"}],"name":"TermsChanged","type":"event"},{"inputs":[],"name":"C_AGREEMENT","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"C_BAND","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"C_NO_EMERGENCY","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"C_NO_RETRO","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"C_OBSERVATION","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"C_ROLLBACK","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"C_SIGNAL","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"C_VETO","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"bandPpm","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"candidate","type":"bytes32"}],"name":"check","outputs":[{"internalType":"uint8","name":"failed","type":"uint8"},{"internalType":"uint256","name":"detail","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"candidate","type":"bytes32"}],"name":"endorse","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"address","name":"","type":"address"}],"name":"endorsed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"epochs","outputs":[{"internalType":"contract IEpochs","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"params","outputs":[{"internalType":"contract IParams","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"proposals","outputs":[{"internalType":"bytes32","name":"candidate","type":"bytes32"},{"internalType":"bytes32","name":"base","type":"bytes32"},{"internalType":"bytes32","name":"rollback","type":"bytes32"},{"internalType":"bool","name":"open","type":"bool"},{"internalType":"uint256","name":"openedEpoch","type":"uint256"},{"components":[{"internalType":"uint256","name":"z","type":"uint256"},{"internalType":"uint256","name":"lambda","type":"uint256"},{"internalType":"uint256","name":"hCap","type":"uint256"},{"internalType":"uint256","name":"gamma","type":"uint256"},{"internalType":"uint256","name":"hTarget","type":"uint256"},{"internalType":"uint256","name":"cMax","type":"uint256"},{"internalType":"uint256","name":"epsilon","type":"uint256"},{"internalType":"uint256","name":"quorumNum","type":"uint256"},{"internalType":"uint256","name":"graceBlocks","type":"uint256"},{"internalType":"uint256","name":"blocksPerEpoch","type":"uint256"},{"internalType":"uint256","name":"commitBlocks","type":"uint256"},{"internalType":"uint256","name":"revealBlocks","type":"uint256"},{"internalType":"uint8","name":"requiredMask","type":"uint8"}],"internalType":"struct Types.Params","name":"proposed","type":"tuple"},{"components":[{"internalType":"uint256","name":"z","type":"uint256"},{"internalType":"uint256","name":"lambda","type":"uint256"},{"internalType":"uint256","name":"hCap","type":"uint256"},{"internalType":"uint256","name":"gamma","type":"uint256"},{"internalType":"uint256","name":"hTarget","type":"uint256"},{"internalType":"uint256","name":"cMax","type":"uint256"},{"internalType":"uint256","name":"epsilon","type":"uint256"},{"internalType":"uint256","name":"quorumNum","type":"uint256"},{"internalType":"uint256","name":"graceBlocks","type":"uint256"},{"internalType":"uint256","name":"blocksPerEpoch","type":"uint256"},{"internalType":"uint256","name":"commitBlocks","type":"uint256"},{"internalType":"uint256","name":"revealBlocks","type":"uint256"},{"internalType":"uint8","name":"requiredMask","type":"uint8"}],"internalType":"struct Types.Params","name":"baseSet","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"uint256","name":"z","type":"uint256"},{"internalType":"uint256","name":"lambda","type":"uint256"},{"internalType":"uint256","name":"hCap","type":"uint256"},{"internalType":"uint256","name":"gamma","type":"uint256"},{"internalType":"uint256","name":"hTarget","type":"uint256"},{"internalType":"uint256","name":"cMax","type":"uint256"},{"internalType":"uint256","name":"epsilon","type":"uint256"},{"internalType":"uint256","name":"quorumNum","type":"uint256"},{"internalType":"uint256","name":"graceBlocks","type":"uint256"},{"internalType":"uint256","name":"blocksPerEpoch","type":"uint256"},{"internalType":"uint256","name":"commitBlocks","type":"uint256"},{"internalType":"uint256","name":"revealBlocks","type":"uint256"},{"internalType":"uint8","name":"requiredMask","type":"uint8"}],"internalType":"struct Types.Params","name":"proposed","type":"tuple"},{"components":[{"internalType":"uint256","name":"z","type":"uint256"},{"internalType":"uint256","name":"lambda","type":"uint256"},{"internalType":"uint256","name":"hCap","type":"uint256"},{"internalType":"uint256","name":"gamma","type":"uint256"},{"internalType":"uint256","name":"hTarget","type":"uint256"},{"internalType":"uint256","name":"cMax","type":"uint256"},{"internalType":"uint256","name":"epsilon","type":"uint256"},{"internalType":"uint256","name":"quorumNum","type":"uint256"},{"internalType":"uint256","name":"graceBlocks","type":"uint256"},{"internalType":"uint256","name":"blocksPerEpoch","type":"uint256"},{"internalType":"uint256","name":"commitBlocks","type":"uint256"},{"internalType":"uint256","name":"revealBlocks","type":"uint256"},{"internalType":"uint8","name":"requiredMask","type":"uint8"}],"internalType":"struct Types.Params","name":"baseSet","type":"tuple"},{"internalType":"bytes32","name":"rollback","type":"bytes32"}],"name":"propose","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"candidate","type":"bytes32"}],"name":"reason","outputs":[{"internalType":"uint8","name":"failed","type":"uint8"},{"internalType":"uint256","name":"detail","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"candidate","type":"bytes32"},{"internalType":"uint256","name":"endorsements","type":"uint256"},{"internalType":"uint256","name":"signalWeight","type":"uint256"}],"name":"report","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"requiredEndorsements","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"requiredObservation","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"requiredSignalPpm","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"candidate","type":"bytes32"}],"name":"satisfied","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"endorsements","type":"uint256"},{"internalType":"uint256","name":"observation","type":"uint256"},{"internalType":"uint256","name":"signalPpm","type":"uint256"},{"internalType":"uint256","name":"band","type":"uint256"}],"name":"setTerms","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"candidate","type":"bytes32"}],"name":"signal","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"address","name":"","type":"address"}],"name":"signalled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"}]
