From f248dbab494808812a75751a46e9f0f67698d53b Mon Sep 17 00:00:00 2001 From: Hongrui Fang Date: Wed, 3 Aug 2022 20:59:37 +0800 Subject: [PATCH] fix compilation errors --- agora-bench/Bench.hs | 1 - agora-scripts/Main.hs | 7 +- agora-specs/Property/Generator.hs | 12 +- agora-specs/Property/Governor.hs | 8 +- agora-specs/Sample/Effect/GovernorMutation.hs | 2 +- .../Sample/Effect/TreasuryWithdrawal.hs | 3 +- agora-specs/Sample/Governor/Initialize.hs | 26 +- agora-specs/Sample/Governor/Mutate.hs | 36 +- agora-specs/Sample/Proposal/Advance.hs | 64 +- agora-specs/Sample/Proposal/Cosign.hs | 40 +- agora-specs/Sample/Proposal/Create.hs | 44 +- agora-specs/Sample/Proposal/UnlockStake.hs | 36 +- agora-specs/Sample/Proposal/Vote.hs | 36 +- agora-specs/Sample/Shared.hs | 8 +- agora-specs/Sample/Stake.hs | 32 +- agora-specs/Sample/Stake/SetDelegate.hs | 18 +- agora-specs/Sample/Treasury.hs | 28 +- agora-specs/Spec/AuthorityToken.hs | 5 +- agora-testlib/Test/Specification.hs | 9 +- agora-testlib/Test/Util.hs | 11 - agora/Agora/AuthorityToken.hs | 11 +- agora/Agora/Effect.hs | 4 +- agora/Agora/Effect/GovernorMutation.hs | 39 +- agora/Agora/Effect/NoOp.hs | 27 +- agora/Agora/Effect/TreasuryWithdrawal.hs | 33 +- agora/Agora/Governor.hs | 71 +- agora/Agora/Governor/Scripts.hs | 86 +- agora/Agora/Plutarch/Orphans.hs | 136 +- agora/Agora/Proposal.hs | 234 ++-- agora/Agora/Proposal/Scripts.hs | 64 +- agora/Agora/Proposal/Time.hs | 99 +- agora/Agora/Stake.hs | 121 +- agora/Agora/Stake/Scripts.hs | 43 +- agora/Agora/Treasury.hs | 32 +- agora/Agora/Utils.hs | 8 +- bench.csv | 1162 ++++++++--------- 36 files changed, 1325 insertions(+), 1271 deletions(-) diff --git a/agora-bench/Bench.hs b/agora-bench/Bench.hs index 32cefc2..d8cdafb 100644 --- a/agora-bench/Bench.hs +++ b/agora-bench/Bench.hs @@ -8,7 +8,6 @@ import Data.ByteString.Short qualified as SBS import Data.Csv (DefaultOrdered, ToNamedRecord, header, headerOrder, namedRecord, toNamedRecord, (.=)) import Data.List (intercalate) import Data.Text (Text, pack) -import GHC.Generics (Generic) import Plutarch.Evaluate (evalScript) import PlutusLedgerApi.V1 ( ExBudget (ExBudget), diff --git a/agora-scripts/Main.hs b/agora-scripts/Main.hs index 4811ab5..5191b85 100644 --- a/agora-scripts/Main.hs +++ b/agora-scripts/Main.hs @@ -107,7 +107,12 @@ agoraScripts params = governorSTAssetClass :: AssetClass governorSTAssetClass = - Value.assetClass (mintingPolicySymbol $ mkMintingPolicy $ governorPolicy governor) "" + Value.assetClass + ( mintingPolicySymbol $ + mkMintingPolicy def $ + governorPolicy governor + ) + "" proposal :: Proposal proposal = proposalFromGovernor governor diff --git a/agora-specs/Property/Generator.hs b/agora-specs/Property/Generator.hs index e7a2f30..a1a26fc 100644 --- a/agora-specs/Property/Generator.hs +++ b/agora-specs/Property/Generator.hs @@ -114,8 +114,10 @@ genInput = do val <- genSingletonValue return $ input $ - credential cred - . withValue val + mconcat + [ credential cred + , withValue val + ] genOutput :: Builder a => Gen a genOutput = do @@ -123,8 +125,10 @@ genOutput = do val <- genSingletonValue return $ output $ - credential cred - . withValue val + mconcat + [ credential cred + , withValue val + ] genOutRef :: Gen TxOutRef genOutRef = do diff --git a/agora-specs/Property/Governor.hs b/agora-specs/Property/Governor.hs index 5bd5097..a75cf55 100644 --- a/agora-specs/Property/Governor.hs +++ b/agora-specs/Property/Governor.hs @@ -157,7 +157,13 @@ governorMintingProperty = -} gst = assetClassValue govAssetClass 1 mintAmount x = mint . mconcat $ replicate x gst - outputToGov = output $ script govValidatorHash . withValue gst . withDatum govDatum + outputToGov = + output $ + mconcat + [ script govValidatorHash + , withValue gst + , withDatum govDatum + ] referencedInput = input $ withOutRef gstUTXORef govDatum :: GovernorDatum diff --git a/agora-specs/Sample/Effect/GovernorMutation.hs b/agora-specs/Sample/Effect/GovernorMutation.hs index bc3967a..3564091 100644 --- a/agora-specs/Sample/Effect/GovernorMutation.hs +++ b/agora-specs/Sample/Effect/GovernorMutation.hs @@ -51,7 +51,7 @@ import Test.Util (datumPair, toDatumHash) -- | The effect validator instance. effectValidator :: Validator -effectValidator = mkValidator $ mutateGovernorValidator governor +effectValidator = mkValidator def $ mutateGovernorValidator governor -- | The hash of the validator instance. effectValidatorHash :: ValidatorHash diff --git a/agora-specs/Sample/Effect/TreasuryWithdrawal.hs b/agora-specs/Sample/Effect/TreasuryWithdrawal.hs index 724dca9..5cb2db2 100644 --- a/agora-specs/Sample/Effect/TreasuryWithdrawal.hs +++ b/agora-specs/Sample/Effect/TreasuryWithdrawal.hs @@ -23,6 +23,7 @@ import Agora.Effect.TreasuryWithdrawal ( TreasuryWithdrawalDatum (TreasuryWithdrawalDatum), treasuryWithdrawalValidator, ) +import Data.Default (def) import Plutarch.Api.V1 (mkValidator, validatorHash) import PlutusLedgerApi.V1 ( Address (Address), @@ -147,7 +148,7 @@ buildReceiversOutputFromDatum (TreasuryWithdrawalDatum xs _) = f <$> xs -- | Effect validator instance. validator :: Validator -validator = mkValidator $ treasuryWithdrawalValidator currSymbol +validator = mkValidator def $ treasuryWithdrawalValidator currSymbol -- | 'TokenName' that represents the hash of the 'Agora.Stake.Stake' validator. validatorHashTN :: TokenName diff --git a/agora-specs/Sample/Governor/Initialize.hs b/agora-specs/Sample/Governor/Initialize.hs index 954d9cb..3828373 100644 --- a/agora-specs/Sample/Governor/Initialize.hs +++ b/agora-specs/Sample/Governor/Initialize.hs @@ -114,7 +114,7 @@ govValidatorHash :: ValidatorHash govValidatorHash = governorValidatorHash governor govPolicy :: MintingPolicy -govPolicy = mkMintingPolicy (governorPolicy governor) +govPolicy = mkMintingPolicy def (governorPolicy governor) govSymbol :: CurrencySymbol govSymbol = mintingPolicySymbol govPolicy @@ -169,12 +169,16 @@ mintGST ps = builder then mconcat [ input $ - pubKey witnessPubKey - . withValue witnessValue - . withOutRef witnessRef + mconcat + [ pubKey witnessPubKey + , withValue witnessValue + , withOutRef witnessRef + ] , output $ - pubKey witnessPubKey - . withValue witnessValue + mconcat + [ pubKey witnessPubKey + , withValue witnessValue + ] ] else mempty @@ -184,11 +188,13 @@ mintGST ps = builder let datum = if ps.withGovernorDatum then withDatum governorOutputDatum - else id + else mempty in output $ - script govValidatorHash - . withValue governorValue - . datum + mconcat + [ script govValidatorHash + , withValue governorValue + , datum + ] -- builder = mconcat diff --git a/agora-specs/Sample/Governor/Mutate.hs b/agora-specs/Sample/Governor/Mutate.hs index 735aae1..c5026b3 100644 --- a/agora-specs/Sample/Governor/Mutate.hs +++ b/agora-specs/Sample/Governor/Mutate.hs @@ -49,7 +49,7 @@ import Sample.Shared ( minAda, ) import Test.Specification (SpecificationTree, testValidator) -import Test.Util (CombinableBuilder, mkSpending, pubKeyHashes, sortValue, validatorHashes, withOptional) +import Test.Util (CombinableBuilder, mkSpending, pubKeyHashes, sortValue, validatorHashes) -------------------------------------------------------------------------------- @@ -142,18 +142,22 @@ mkGovernorBuilder ps = then pubKey $ head pubKeyHashes else script govValidatorHash withGSTDatum = - withOptional withDatum $ + maybe mempty withDatum $ mkGovernorOutputDatum ps.governorOutputDatumValidity in mconcat [ input $ - script govValidatorHash - . withDatum governorInputDatum - . withValue value - . withOutRef governorRef + mconcat + [ script govValidatorHash + , withDatum governorInputDatum + , withValue value + , withOutRef governorRef + ] , output $ - gstOutput - . withGSTDatum - . withValue value + mconcat + [ gstOutput + , withGSTDatum + , withValue value + ] ] -------------------------------------------------------------------------------- @@ -162,7 +166,7 @@ mockEffectValidator :: ClosedTerm PValidator mockEffectValidator = noOpValidator authorityTokenSymbol mockEffectValidatorHash :: ValidatorHash -mockEffectValidatorHash = validatorHash $ mkValidator mockEffectValidator +mockEffectValidatorHash = validatorHash $ mkValidator def mockEffectValidator mkGATValue :: GATValidity -> Integer -> Value mkGATValue NoGAT _ = mempty @@ -187,11 +191,15 @@ mkMockEffectBuilder ps = in mconcat [ mint burnt , input $ - script mockEffectValidatorHash - . withValue inputValue + mconcat + [ script mockEffectValidatorHash + , withValue inputValue + ] , output $ - script mockEffectValidatorHash - . withValue outputValue + mconcat + [ script mockEffectValidatorHash + , withValue outputValue + ] ] -------------------------------------------------------------------------------- diff --git a/agora-specs/Sample/Proposal/Advance.hs b/agora-specs/Sample/Proposal/Advance.hs index 2039f56..2ef3ff7 100644 --- a/agora-specs/Sample/Proposal/Advance.hs +++ b/agora-specs/Sample/Proposal/Advance.hs @@ -321,14 +321,18 @@ mkProposalBuilder ps = value = sortValue $ minAda <> pst in mconcat [ input $ - script proposalValidatorHash - . withOutRef proposalRef - . withDatum (mkProposalInputDatum ps) - . withValue value + mconcat + [ script proposalValidatorHash + , withOutRef proposalRef + , withDatum (mkProposalInputDatum ps) + , withValue value + ] , output $ - script proposalValidatorHash - . withDatum (mkProposalOutputDatum ps) - . withValue value + mconcat + [ script proposalValidatorHash + , withDatum (mkProposalOutputDatum ps) + , withValue value + ] ] {- | The proposal redeemer used to spend the proposal UTXO, which is always @@ -400,14 +404,18 @@ mkStakeBuilder ps = in mconcat [ withSig , input $ - script stakeValidatorHash - . withOutRef (mkStakeRef idx) - . withValue perStakeValue - . withDatum i + mconcat + [ script stakeValidatorHash + , withOutRef (mkStakeRef idx) + , withValue perStakeValue + , withDatum i + ] , output $ - script stakeValidatorHash - . withValue perStakeValue - . withDatum o + mconcat + [ script stakeValidatorHash + , withValue perStakeValue + , withDatum o + ] ] in mconcat $ zipWith3 @@ -457,15 +465,19 @@ mkGovernorBuilder ps = value = sortValue $ gst <> minAda in mconcat [ input $ - script govValidatorHash - . withValue value - . withOutRef governorRef - . withDatum governorInputDatum + mconcat + [ script govValidatorHash + , withValue value + , withOutRef governorRef + , withDatum governorInputDatum + ] , output $ - script govValidatorHash - . withValue value - . withOutRef governorRef - . withDatum (mkGovernorOutputDatum ps) + mconcat + [ script govValidatorHash + , withValue value + , withOutRef governorRef + , withDatum (mkGovernorOutputDatum ps) + ] ] {- | The proposal redeemer used to spend the governor UTXO, which is always @@ -501,9 +513,11 @@ mkAuthorityTokenBuilder (AuthorityTokenParameters es mdt invalidTokenName) = in mconcat [ mint minted , output $ - script vh - . maybe id withDatum mdt - . withValue value + mconcat + [ script vh + , maybe mempty withDatum mdt + , withValue value + ] ] -- | The redeemer used while running the authority token policy. diff --git a/agora-specs/Sample/Proposal/Cosign.hs b/agora-specs/Sample/Proposal/Cosign.hs index 0453533..6970497 100644 --- a/agora-specs/Sample/Proposal/Cosign.hs +++ b/agora-specs/Sample/Proposal/Cosign.hs @@ -162,15 +162,19 @@ cosign ps = builder else stakeDatum in mconcat [ input $ - script stakeValidatorHash - . withValue stakeValue - . withDatum stakeDatum - . withTxId stakeTxRef - . withOutRef (mkStakeRef refIdx) + mconcat + [ script stakeValidatorHash + , withValue stakeValue + , withDatum stakeDatum + , withTxId stakeTxRef + , withOutRef (mkStakeRef refIdx) + ] , output $ - script stakeValidatorHash - . withValue stakeValue - . withDatum stakeOutputDatum + mconcat + [ script stakeValidatorHash + , withValue stakeValue + , withDatum stakeOutputDatum + ] , signedWith stakeDatum.owner ] ) @@ -189,15 +193,19 @@ cosign ps = builder proposalBuilder = mconcat [ input $ - script proposalValidatorHash - . withValue pst - . withDatum proposalInputDatum - . withTxId proposalTxRef - . withOutRef proposalRef + mconcat + [ script proposalValidatorHash + , withValue pst + , withDatum proposalInputDatum + , withTxId proposalTxRef + , withOutRef proposalRef + ] , output $ - script proposalValidatorHash - . withValue (sortValue (pst <> minAda)) - . withDatum proposalOutputDatum + mconcat + [ script proposalValidatorHash + , withValue (sortValue (pst <> minAda)) + , withDatum proposalOutputDatum + ] ] validTimeRange :: POSIXTimeRange diff --git a/agora-specs/Sample/Proposal/Create.hs b/agora-specs/Sample/Proposal/Create.hs index 4dd15e2..e962f00 100644 --- a/agora-specs/Sample/Proposal/Create.hs +++ b/agora-specs/Sample/Proposal/Create.hs @@ -302,29 +302,39 @@ createProposal ps = builder , --- timeRange $ mkTimeRange ps , input $ - script govValidatorHash - . withValue governorValue - . withDatum governorInputDatum - . withOutRef governorRef + mconcat + [ script govValidatorHash + , withValue governorValue + , withDatum governorInputDatum + , withOutRef governorRef + ] , output $ - script govValidatorHash - . withValue governorValue - . withDatum (mkGovernorOutputDatum ps) + mconcat + [ script govValidatorHash + , withValue governorValue + , withDatum (mkGovernorOutputDatum ps) + ] , --- input $ - script stakeValidatorHash - . withValue stakeValue - . withDatum (mkStakeInputDatum ps) - . withOutRef stakeRef + mconcat + [ script stakeValidatorHash + , withValue stakeValue + , withDatum (mkStakeInputDatum ps) + , withOutRef stakeRef + ] , output $ - script stakeValidatorHash - . withValue stakeValue - . withDatum (mkStakeOutputDatum ps) + mconcat + [ script stakeValidatorHash + , withValue stakeValue + , withDatum (mkStakeOutputDatum ps) + ] , --- output $ - script proposalValidatorHash - . withValue proposalValue - . withDatum (mkProposalOutputDatum ps) + mconcat + [ script proposalValidatorHash + , withValue proposalValue + , withDatum (mkProposalOutputDatum ps) + ] ] -------------------------------------------------------------------------------- diff --git a/agora-specs/Sample/Proposal/UnlockStake.hs b/agora-specs/Sample/Proposal/UnlockStake.hs index a664d4e..09c1db0 100644 --- a/agora-specs/Sample/Proposal/UnlockStake.hs +++ b/agora-specs/Sample/Proposal/UnlockStake.hs @@ -257,14 +257,18 @@ unlockStake ps = ( \((i, o), idx) -> mconcat [ input $ - script proposalValidatorHash - . withValue pst - . withDatum i - . withOutRef (mkProposalRef idx) + mconcat + [ script proposalValidatorHash + , withValue pst + , withDatum i + , withOutRef (mkProposalRef idx) + ] , output $ - script proposalValidatorHash - . withValue (sortValue $ pst <> minAda) - . withDatum o + mconcat + [ script proposalValidatorHash + , withValue (sortValue $ pst <> minAda) + , withDatum o + ] ] ) (zip pIODatums [0 ..]) @@ -285,14 +289,18 @@ unlockStake ps = stakes = mconcat [ input $ - script stakeValidatorHash - . withValue stakeValue - . withDatum sInDatum - . withOutRef stakeRef + mconcat + [ script stakeValidatorHash + , withValue stakeValue + , withDatum sInDatum + , withOutRef stakeRef + ] , output $ - script stakeValidatorHash - . withValue stakeValue - . withDatum sOutDatum + mconcat + [ script stakeValidatorHash + , withValue stakeValue + , withDatum sOutDatum + ] ] builder = diff --git a/agora-specs/Sample/Proposal/Vote.hs b/agora-specs/Sample/Proposal/Vote.hs index dd4f661..b1b1835 100644 --- a/agora-specs/Sample/Proposal/Vote.hs +++ b/agora-specs/Sample/Proposal/Vote.hs @@ -219,23 +219,31 @@ vote params = , signedWith signer , timeRange validTimeRange , input $ - script proposalValidatorHash - . withValue pst - . withDatum proposalInputDatum - . withOutRef proposalRef + mconcat + [ script proposalValidatorHash + , withValue pst + , withDatum proposalInputDatum + , withOutRef proposalRef + ] , input $ - script stakeValidatorHash - . withValue stakeValue - . withDatum stakeInputDatum - . withOutRef stakeRef + mconcat + [ script stakeValidatorHash + , withValue stakeValue + , withDatum stakeInputDatum + , withOutRef stakeRef + ] , output $ - script proposalValidatorHash - . withValue pst - . withDatum proposalOutputDatum + mconcat + [ script proposalValidatorHash + , withValue pst + , withDatum proposalOutputDatum + ] , output $ - script stakeValidatorHash - . withValue stakeValue - . withDatum stakeOutputDatum + mconcat + [ script stakeValidatorHash + , withValue stakeValue + , withDatum stakeOutputDatum + ] ] in builder diff --git a/agora-specs/Sample/Shared.hs b/agora-specs/Sample/Shared.hs index 8e6c476..a08891a 100644 --- a/agora-specs/Sample/Shared.hs +++ b/agora-specs/Sample/Shared.hs @@ -141,10 +141,10 @@ governor = Governor oref gt mc mc = 20 govPolicy :: MintingPolicy -govPolicy = mkMintingPolicy (governorPolicy governor) +govPolicy = mkMintingPolicy def (governorPolicy governor) govValidator :: Validator -govValidator = mkValidator (governorValidator governor) +govValidator = mkValidator def (governorValidator governor) govSymbol :: CurrencySymbol govSymbol = mintingPolicySymbol govPolicy @@ -239,7 +239,7 @@ gatCs :: CurrencySymbol gatCs = "73475cb40a568e8da8a045ced110137e159f890ac4da883b6b17dc651b3a8049" trValidator :: Validator -trValidator = mkValidator (treasuryValidator gatCs) +trValidator = mkValidator def (treasuryValidator gatCs) -- | `ScriptCredential` used for the dummy treasury validator. trCredential :: Credential @@ -251,7 +251,7 @@ gatTn = validatorHashToTokenName $ validatorHash mockTrEffect -- | Mock treasury effect script, used for testing. mockTrEffect :: Validator -mockTrEffect = mkValidator $ noOpValidator gatCs +mockTrEffect = mkValidator def $ noOpValidator gatCs -- | Mock treasury effect validator hash mockTrEffectHash :: ValidatorHash diff --git a/agora-specs/Sample/Stake.hs b/agora-specs/Sample/Stake.hs index ee60d44..9348260 100644 --- a/agora-specs/Sample/Stake.hs +++ b/agora-specs/Sample/Stake.hs @@ -26,6 +26,7 @@ import Agora.Stake ( StakeDatum (StakeDatum, stakedAmount), ) import Agora.Stake.Scripts (stakeValidator) +import Data.Default (def) import Data.Tagged (Tagged, untag) import Plutarch.Api.V1 (mkValidator, validatorHash) import Plutarch.Context ( @@ -69,7 +70,10 @@ import Sample.Shared ( -- | 'TokenName' that represents the hash of the 'Stake' validator. validatorHashTN :: TokenName -validatorHashTN = let ValidatorHash vh = validatorHash (mkValidator $ stakeValidator stake) in TokenName vh +validatorHashTN = + let validator = mkValidator def $ stakeValidator stake + ValidatorHash vh = validatorHash validator + in TokenName vh -- | This script context should be a valid transaction. stakeCreation :: ScriptContext @@ -85,9 +89,11 @@ stakeCreation = , signedWith signer , mint st , output $ - script stakeValidatorHash - . withValue (st <> Value.singleton "da8c30857834c6ae7203935b89278c532b3995245295456f993e1d24" "LQ" 424242424242) - . withDatum datum + mconcat + [ script stakeValidatorHash + , withValue (st <> Value.singleton "da8c30857834c6ae7203935b89278c532b3995245295456f993e1d24" "LQ" 424242424242) + , withDatum datum + ] , withMinting stakeSymbol ] in buildMintingUnsafe builder @@ -143,14 +149,18 @@ stakeDepositWithdraw config = , signedWith signer , mint st , input $ - script stakeValidatorHash - . withValue (st <> Value.assetClassValue (untag stake.gtClassRef) (untag stakeBefore.stakedAmount)) - . withDatum stakeAfter - . withOutRef stakeRef + mconcat + [ script stakeValidatorHash + , withValue (st <> Value.assetClassValue (untag stake.gtClassRef) (untag stakeBefore.stakedAmount)) + , withDatum stakeAfter + , withOutRef stakeRef + ] , output $ - script stakeValidatorHash - . withValue (st <> Value.assetClassValue (untag stake.gtClassRef) (untag stakeAfter.stakedAmount)) - . withDatum stakeAfter + mconcat + [ script stakeValidatorHash + , withValue (st <> Value.assetClassValue (untag stake.gtClassRef) (untag stakeAfter.stakedAmount)) + , withDatum stakeAfter + ] , withSpendingOutRef stakeRef ] in buildSpendingUnsafe builder diff --git a/agora-specs/Sample/Stake/SetDelegate.hs b/agora-specs/Sample/Stake/SetDelegate.hs index cf46e2a..4549600 100644 --- a/agora-specs/Sample/Stake/SetDelegate.hs +++ b/agora-specs/Sample/Stake/SetDelegate.hs @@ -129,14 +129,18 @@ setDelegate ps = buildSpendingUnsafe builder [ txId "0b2086cbf8b6900f8cb65e012de4516cb66b5cb08a9aaba12a8b88be" , signedWith signer , input $ - script stakeValidatorHash - . withValue stakeValue - . withDatum stakeInput - . withOutRef stakeRef + mconcat + [ script stakeValidatorHash + , withValue stakeValue + , withDatum stakeInput + , withOutRef stakeRef + ] , output $ - script stakeValidatorHash - . withValue stakeValue - . withDatum stakeOutput + mconcat + [ script stakeValidatorHash + , withValue stakeValue + , withDatum stakeOutput + ] , withSpendingOutRef stakeRef ] diff --git a/agora-specs/Sample/Treasury.hs b/agora-specs/Sample/Treasury.hs index 2c3c902..f314509 100644 --- a/agora-specs/Sample/Treasury.hs +++ b/agora-specs/Sample/Treasury.hs @@ -19,7 +19,6 @@ module Sample.Treasury ( import Plutarch.Context ( MintingBuilder, - UTXO, buildMintingUnsafe, credential, input, @@ -57,11 +56,12 @@ import Sample.Shared ( baseCtxBuilder :: MintingBuilder baseCtxBuilder = - let treasury :: UTXO -> UTXO - treasury = - credential trCredential - . withValue minAda - . withTxId "73475cb40a568e8da8a045ced110137e159f890ac4da883b6b17dc651b3a8049" + let treasury = + mconcat + [ credential trCredential + , withValue minAda + , withTxId "73475cb40a568e8da8a045ced110137e159f890ac4da883b6b17dc651b3a8049" + ] in mconcat [ txId "73475cb40a568e8da8a045ced110137e159f890ac4da883b6b17dc651b3a8049" , signedWith signer @@ -81,9 +81,11 @@ validCtx = mconcat [ baseCtxBuilder , input $ - script mockTrEffectHash - . withValue (Value.singleton gatCs gatTn 1 <> minAda) - . withTxId "52b67b60260da3937510ad545c7f46f8d9915bd27e1082e76947fb309f913bd3" + mconcat + [ script mockTrEffectHash + , withValue (Value.singleton gatCs gatTn 1 <> minAda) + , withTxId "52b67b60260da3937510ad545c7f46f8d9915bd27e1082e76947fb309f913bd3" + ] ] in buildMintingUnsafe builder @@ -122,8 +124,10 @@ trCtxGATNameNotAddress = mconcat [ baseCtxBuilder , input $ - script wrongEffHash - . withValue (Value.singleton gatCs gatTn 1 <> minAda) - . withTxId "52b67b60260da3937510ad545c7f46f8d9915bd27e1082e76947fb309f913bd3" + mconcat + [ script wrongEffHash + , withValue (Value.singleton gatCs gatTn 1 <> minAda) + , withTxId "52b67b60260da3937510ad545c7f46f8d9915bd27e1082e76947fb309f913bd3" + ] ] in buildMintingUnsafe builder diff --git a/agora-specs/Spec/AuthorityToken.hs b/agora-specs/Spec/AuthorityToken.hs index 93d7bea..909cbce 100644 --- a/agora-specs/Spec/AuthorityToken.hs +++ b/agora-specs/Spec/AuthorityToken.hs @@ -10,7 +10,8 @@ Tests for Authority token functions module Spec.AuthorityToken (specs) where import Agora.AuthorityToken (singleAuthorityTokenBurned) -import Plutarch (ClosedTerm, POpaque, compile, perror, popaque) +import Plutarch (ClosedTerm, POpaque, perror, popaque) +import Plutarch.Extra.Compile (mustCompile) import Plutarch.Unsafe (punsafeCoerce) import PlutusLedgerApi.V1 ( Address (Address), @@ -60,7 +61,7 @@ singleAuthorityTokenBurnedTest mint outs = actual (popaque (pconstant ())) perror - in compile s + in mustCompile s -- | The SpecificationTree exported by this module. specs :: [SpecificationTree] diff --git a/agora-testlib/Test/Specification.hs b/agora-testlib/Test/Specification.hs index 2594b01..34a0335 100644 --- a/agora-testlib/Test/Specification.hs +++ b/agora-testlib/Test/Specification.hs @@ -52,6 +52,7 @@ module Test.Specification ( import Plutarch.Api.V1 (PMintingPolicy, PValidator) import Plutarch.Builtin (pforgetData) import Plutarch.Evaluate (evalScript) +import Plutarch.Extra.Compile (mustCompile) import Plutarch.Lift (PUnsafeLiftDecl (PLifted)) import PlutusLedgerApi.V1 (Script, ScriptContext) import PlutusTx.IsData qualified as PlutusTx (ToData) @@ -164,7 +165,7 @@ policySucceedsWith :: SpecificationTree policySucceedsWith tag policy redeemer scriptContext = scriptSucceeds tag $ - compile + mustCompile ( policy # pforgetData (pconstantData redeemer) # pconstant scriptContext @@ -182,7 +183,7 @@ policyFailsWith :: SpecificationTree policyFailsWith tag policy redeemer scriptContext = scriptFails tag $ - compile + mustCompile ( policy # pforgetData (pconstantData redeemer) # pconstant scriptContext @@ -203,7 +204,7 @@ validatorSucceedsWith :: SpecificationTree validatorSucceedsWith tag validator datum redeemer scriptContext = scriptSucceeds tag $ - compile + mustCompile ( validator # pforgetData (pconstantData datum) # pforgetData (pconstantData redeemer) @@ -225,7 +226,7 @@ validatorFailsWith :: SpecificationTree validatorFailsWith tag validator datum redeemer scriptContext = scriptFails tag $ - compile + mustCompile ( validator # pforgetData (pconstantData datum) # pforgetData (pconstantData redeemer) diff --git a/agora-testlib/Test/Util.hs b/agora-testlib/Test/Util.hs index 3d2c8cb..d0b0a7b 100644 --- a/agora-testlib/Test/Util.hs +++ b/agora-testlib/Test/Util.hs @@ -19,7 +19,6 @@ module Test.Util ( scriptCredentials, validatorHashes, groupsOfN, - withOptional, mkSpending, mkMinting, CombinableBuilder, @@ -37,7 +36,6 @@ import Data.ByteString.Lazy qualified as ByteString.Lazy import Data.List (sortOn) import Plutarch.Context ( Builder, - UTXO, buildMintingUnsafe, buildSpendingUnsafe, withMinting, @@ -182,15 +180,6 @@ groupsOfN n xs = -------------------------------------------------------------------------------- --- | Optionally apply a modifier to the given 'UTXO'. -withOptional :: - (a -> UTXO -> UTXO) -> - Maybe a -> - UTXO -> - UTXO -withOptional f (Just b) = f b -withOptional _ _ = id - {- | Given the builder generator and the parameters, create a 'ScriptContext' that spends the UTXO that referenced by the given 'TxOutRef'. -} diff --git a/agora/Agora/AuthorityToken.hs b/agora/Agora/AuthorityToken.hs index 448a215..630c07d 100644 --- a/agora/Agora/AuthorityToken.hs +++ b/agora/Agora/AuthorityToken.hs @@ -12,7 +12,6 @@ module Agora.AuthorityToken ( AuthorityToken (..), ) where -import GHC.Generics qualified as GHC import Plutarch.Api.V1 ( AmountGuarantees, KeyGuarantees, @@ -53,7 +52,7 @@ newtype AuthorityToken = AuthorityToken } deriving stock ( -- | @since 0.1.0 - GHC.Generic + Generic ) -------------------------------------------------------------------------------- @@ -105,7 +104,7 @@ authorityTokensValidIn = phoistAcyclic $ singleAuthorityTokenBurned :: forall (keys :: KeyGuarantees) (amounts :: AmountGuarantees) (s :: S). Term s PCurrencySymbol -> - Term s (PBuiltinList (PAsData PTxInInfo)) -> + Term s (PBuiltinList PTxInInfo) -> Term s (PValue keys amounts) -> Term s PBool singleAuthorityTokenBurned gatCs inputs mint = unTermCont $ do @@ -120,7 +119,7 @@ singleAuthorityTokenBurned gatCs inputs mint = unTermCont $ do pall # plam ( \txInInfo' -> unTermCont $ do - PTxInInfo txInInfo <- pmatchC (pfromData txInInfo') + PTxInInfo txInInfo <- pmatchC txInInfo' let txOut' = pfield @"resolved" # txInInfo pure $ authorityTokensValidIn # gatCs # pfromData txOut' ) @@ -156,9 +155,7 @@ authorityTokenPolicy params = pguardC "All outputs only emit valid GATs" $ pall # plam - ( (authorityTokensValidIn # ownSymbol #) - . pfromData - ) + (authorityTokensValidIn # ownSymbol #) # txInfo.outputs pure $ popaque $ pconstant () ) diff --git a/agora/Agora/Effect.hs b/agora/Agora/Effect.hs index ad4776d..84557cd 100644 --- a/agora/Agora/Effect.hs +++ b/agora/Agora/Effect.hs @@ -23,7 +23,7 @@ import PlutusLedgerApi.V1.Value (CurrencySymbol) -} makeEffect :: forall (datum :: PType). - (PIsData datum, PTryFrom PData (PAsData datum)) => + (PTryFrom PData datum) => CurrencySymbol -> (forall (s :: S). Term s PCurrencySymbol -> Term s datum -> Term s PTxOutRef -> Term s (PAsData PTxInfo) -> Term s POpaque) -> ClosedTerm PValidator @@ -34,7 +34,7 @@ makeEffect gatCs' f = -- convert input datum, PData, into desierable type -- the way this conversion is performed should be defined -- by PTryFrom for each datum in effect script. - (pfromData -> datum', _) <- ptryFromC datum + (datum', _) <- ptryFromC datum -- ensure purpose is Spending. PSpending txOutRef <- pmatchC $ pfromData ctx.purpose diff --git a/agora/Agora/Effect/GovernorMutation.hs b/agora/Agora/Effect/GovernorMutation.hs index 433b27c..8e3383a 100644 --- a/agora/Agora/Effect/GovernorMutation.hs +++ b/agora/Agora/Effect/GovernorMutation.hs @@ -30,8 +30,7 @@ import Agora.Governor.Scripts ( governorSTAssetClassFromGovernor, ) import Agora.Plutarch.Orphans () -import GHC.Generics qualified as GHC -import Generics.SOP (Generic, I (I)) +import Generics.SOP qualified as SOP import Plutarch.Api.V1 ( PTxOutRef, PValidator, @@ -42,7 +41,6 @@ import "liqwid-plutarch-extra" Plutarch.Api.V1.Value (pvalueOf) import Plutarch.DataRepr ( DerivePConstantViaData (..), PDataFields, - PIsDataReprInstances (PIsDataReprInstances), ) import Plutarch.Extra.Maybe ( passertPDJust, @@ -66,8 +64,16 @@ data MutateGovernorDatum = MutateGovernorDatum , newDatum :: GovernorDatum -- ^ The new settings for the governor. } - deriving stock (Show, GHC.Generic) - deriving anyclass (Generic) + deriving stock + ( -- | @since 0.1.ç + Show + , -- | @since 0.1.ç + Generic + ) + deriving anyclass + ( -- | @since 0.1.ç + SOP.Generic + ) PlutusTx.makeIsDataIndexed ''MutateGovernorDatum [('MutateGovernorDatum, 0)] @@ -88,19 +94,13 @@ newtype PMutateGovernorDatum (s :: S) ) ) deriving stock - ( -- | @since 0.1.0 - GHC.Generic - ) - deriving anyclass ( -- | @since 0.1.0 Generic ) deriving anyclass ( -- | @since 0.1.0 - PIsDataRepr - ) - deriving - ( -- | @since 0.1.0 + SOP.Generic + , -- | @since 0.1.0 PlutusType , -- | @since 0.1.0 PIsData @@ -109,7 +109,9 @@ newtype PMutateGovernorDatum (s :: S) , -- | @since 0.1.0 PEq ) - via (PIsDataReprInstances PMutateGovernorDatum) + +instance DerivePlutusType PMutateGovernorDatum where + type DPTStrat _ = PlutusTypeData -- | @since 0.1.0 instance PUnsafeLiftDecl PMutateGovernorDatum where type PLifted PMutateGovernorDatum = MutateGovernorDatum @@ -118,7 +120,7 @@ instance PUnsafeLiftDecl PMutateGovernorDatum where type PLifted PMutateGovernor deriving via (DerivePConstantViaData MutateGovernorDatum PMutateGovernorDatum) instance (PConstantDecl MutateGovernorDatum) -- | @since 0.1.0 -deriving via PAsData (PIsDataReprInstances PMutateGovernorDatum) instance PTryFrom PData (PAsData PMutateGovernorDatum) +deriving anyclass instance PTryFrom PData PMutateGovernorDatum -------------------------------------------------------------------------------- @@ -195,7 +197,7 @@ mutateGovernorValidator gov = makeEffect (authorityTokenSymbolFromGovernor gov) plength # pfromData txInfoF.outputs #== 1 let govAddress = pfield @"address" #$ govInInfo.resolved - govOutput' = pfromData $ phead # pfromData txInfoF.outputs + govOutput' = phead # pfromData txInfoF.outputs govOutput <- pletFieldsC @'["address", "value", "datumHash"] govOutput' @@ -208,9 +210,8 @@ mutateGovernorValidator gov = makeEffect (authorityTokenSymbolFromGovernor gov) let governorOutputDatumHash = passertPDJust # "Governor output doesn't have datum" # govOutput.datumHash governorOutputDatum = - pfromData @PGovernorDatum $ - passertPJust # "Governor output datum not found" - #$ ptryFindDatum # governorOutputDatumHash # txInfoF.datums + passertPJust @PGovernorDatum # "Governor output datum not found" + #$ ptryFindDatum # governorOutputDatumHash # txInfoF.datums -- Ensure the output governor datum is what we want. pguardC "Unexpected governor datum" $ datumF.newDatum #== governorOutputDatum diff --git a/agora/Agora/Effect/NoOp.hs b/agora/Agora/Effect/NoOp.hs index 0ff1dc6..4027a6c 100644 --- a/agora/Agora/Effect/NoOp.hs +++ b/agora/Agora/Effect/NoOp.hs @@ -7,11 +7,9 @@ A dumb effect that only burns its GAT. -} module Agora.Effect.NoOp (noOpValidator, PNoOp) where -import Control.Applicative (Const) - import Agora.Effect (makeEffect) +import Agora.Plutarch.Orphans () import Plutarch.Api.V1 (PValidator) -import Plutarch.TryFrom (PTryFrom (..)) import PlutusLedgerApi.V1.Value (CurrencySymbol) {- | Dummy datum for NoOp effect. @@ -19,22 +17,23 @@ import PlutusLedgerApi.V1.Value (CurrencySymbol) @since 0.1.0 -} newtype PNoOp (s :: S) = PNoOp (Term s PUnit) - deriving + deriving stock + ( -- | @since 0.2.0 + Generic + ) + deriving anyclass ( -- | @since 0.1.0 PlutusType , -- | @since 0.1.0 PIsData ) - via (DerivePNewtype PNoOp PUnit) --- | @since 0.1.0 -instance PTryFrom PData (PAsData PNoOp) where - type PTryFromExcess PData (PAsData PNoOp) = Const () - ptryFrom' _ cont = - -- JUSTIFICATION: - -- We don't care anything about data. - -- It should always be reduced to Unit. - cont (pdata $ pcon $ PNoOp (pconstant ()), ()) +-- | @since 0.2.0 +instance DerivePlutusType PNoOp where + type DPTStrat _ = PlutusTypeNewtype + +-- | @since 0.2.0 +instance PTryFrom PData (PAsData PNoOp) {- | Dummy effect which can only burn its GAT. @@ -42,4 +41,4 @@ instance PTryFrom PData (PAsData PNoOp) where -} noOpValidator :: CurrencySymbol -> ClosedTerm PValidator noOpValidator curr = makeEffect curr $ - \_ (_datum :: Term s PNoOp) _ _ -> popaque (pconstant ()) + \_ (_datum :: Term s (PAsData PNoOp)) _ _ -> popaque (pconstant ()) diff --git a/agora/Agora/Effect/TreasuryWithdrawal.hs b/agora/Agora/Effect/TreasuryWithdrawal.hs index 3c18507..53e1336 100644 --- a/agora/Agora/Effect/TreasuryWithdrawal.hs +++ b/agora/Agora/Effect/TreasuryWithdrawal.hs @@ -15,8 +15,7 @@ module Agora.Effect.TreasuryWithdrawal ( import Agora.Effect (makeEffect) import Agora.Plutarch.Orphans () -import GHC.Generics qualified as GHC -import Generics.SOP (Generic, I (I)) +import Generics.SOP qualified as SOP import Plutarch.Api.V1 ( AmountGuarantees (Positive), KeyGuarantees (Sorted), @@ -31,7 +30,6 @@ import "plutarch" Plutarch.Api.V1.Value (pnormalize) import Plutarch.DataRepr ( DerivePConstantViaData (..), PDataFields, - PIsDataReprInstances (..), ) import Plutarch.Extra.TermCont (pguardC, pletC, pletFieldsC, pmatchC) import Plutarch.Lift (PConstantDecl, PUnsafeLiftDecl (..)) @@ -57,11 +55,11 @@ data TreasuryWithdrawalDatum = TreasuryWithdrawalDatum ( -- | @since 0.1.0 Show , -- | @since 0.1.0 - GHC.Generic + Generic ) deriving anyclass ( -- | @since 0.1.0 - Generic + SOP.Generic ) -- | @since 0.1.0 @@ -86,23 +84,21 @@ newtype PTreasuryWithdrawalDatum (s :: S) ) deriving stock ( -- | @since 0.1.0 - GHC.Generic + Generic ) deriving anyclass ( -- | @since 0.1.0 - Generic + SOP.Generic , -- | @since 0.1.0 - PIsDataRepr - ) - deriving - ( -- | @since 0.1.0 PlutusType , -- | @since 0.1.0 PIsData , -- | @since 0.1.0 PDataFields ) - via PIsDataReprInstances PTreasuryWithdrawalDatum + +instance DerivePlutusType PTreasuryWithdrawalDatum where + type DPTStrat _ = PlutusTypeData -- | @since 0.1.0 instance PUnsafeLiftDecl PTreasuryWithdrawalDatum where @@ -115,10 +111,7 @@ deriving via (PConstantDecl TreasuryWithdrawalDatum) -- | @since 0.1.0 -deriving via - PAsData (PIsDataReprInstances PTreasuryWithdrawalDatum) - instance - PTryFrom PData (PAsData PTreasuryWithdrawalDatum) +instance PTryFrom PData PTreasuryWithdrawalDatum {- | Withdraws given list of values to specific target addresses. It can be evoked by burning GAT. The transaction should have correct @@ -150,17 +143,17 @@ treasuryWithdrawalValidator currSymbol = makeEffect currSymbol $ pletC $ pmap # plam - ( \(pfromData -> txOut') -> unTermCont $ do + ( \txOut' -> unTermCont $ do txOut <- pletFieldsC @'["address", "value"] $ txOut' let cred = pfield @"credential" # pfromData txOut.address pure . pdata $ ptuple # cred # txOut.value ) - # txInfo.outputs + # pfromData txInfo.outputs inputValues <- pletC $ pmap # plam - ( \((pfield @"resolved" #) . pfromData -> txOut') -> unTermCont $ do + ( \((pfield @"resolved" #) -> txOut') -> unTermCont $ do txOut <- pletFieldsC @'["address", "value"] $ txOut' let cred = pfield @"credential" # pfromData txOut.address pure . pdata $ ptuple # cred # txOut.value @@ -189,7 +182,7 @@ treasuryWithdrawalValidator currSymbol = makeEffect currSymbol $ pnot #$ pany # plam ( \x -> - effInput.address #== pfield @"address" # pfromData x + effInput.address #== pfield @"address" # x ) # pfromData txInfo.outputs inputsAreOnlyTreasuriesOrCollateral = diff --git a/agora/Agora/Governor.hs b/agora/Agora/Governor.hs index ae7acef..9f53b7f 100644 --- a/agora/Agora/Governor.hs +++ b/agora/Agora/Governor.hs @@ -40,18 +40,16 @@ import Agora.Proposal.Time ( ) import Agora.SafeMoney (GTTag) import Data.Tagged (Tagged (..)) -import GHC.Generics qualified as GHC -import Generics.SOP (Generic, I (I)) +import Generics.SOP qualified as SOP import Plutarch.DataRepr ( DerivePConstantViaData (..), PDataFields, - PIsDataReprInstances (PIsDataReprInstances), ) import Plutarch.Extra.IsData ( DerivePConstantViaEnum (..), EnumIsData (..), + PlutusTypeEnumData, ) -import Plutarch.Extra.Other (DerivePNewtype' (..)) import Plutarch.Extra.TermCont (pletFieldsC) import Plutarch.Lift (PConstantDecl, PUnsafeLiftDecl (..)) import PlutusLedgerApi.V1 (TxOutRef) @@ -78,7 +76,12 @@ data GovernorDatum = GovernorDatum -- ^ The maximum number of unfinished proposals that a stake is allowed to be -- associated to. } - deriving stock (Show, GHC.Generic) + deriving stock + ( -- | @since 0.1.0 + Show + , -- | @since 0.1.0 + Generic + ) -- | @since 0.1.0 PlutusTx.makeIsDataIndexed ''GovernorDatum [('GovernorDatum, 0)] @@ -105,7 +108,7 @@ data GovernorRedeemer ( -- | @since 0.1.0 Show , -- | @since 0.1.0 - GHC.Generic + Generic , -- | @since 0.2.0 Enum , -- | @since 0.2.0 @@ -113,7 +116,7 @@ data GovernorRedeemer ) deriving anyclass ( -- | @since 0.2.0 - Generic + SOP.Generic ) deriving ( -- | @since 0.1.0 @@ -136,7 +139,12 @@ data Governor = Governor -- ^ Arbitrary limit for maximum amount of cosigners on a proposal. -- See `Agora.Proposal.proposalDatumValid`. } - deriving stock (GHC.Generic) + deriving stock + ( -- | @since 0.1.0 + Generic + , -- | @since 0.2.0 + Show + ) -------------------------------------------------------------------------------- @@ -158,18 +166,14 @@ newtype PGovernorDatum (s :: S) = PGovernorDatum ) } deriving stock - ( -- | @since 0.1.0 - GHC.Generic - ) - deriving anyclass ( -- | @since 0.1.0 Generic ) deriving anyclass ( -- | @since 0.1.0 - PIsDataRepr + SOP.Generic ) - deriving + deriving anyclass ( -- | @since 0.1.0 PlutusType , -- | @since 0.1.0 @@ -179,7 +183,10 @@ newtype PGovernorDatum (s :: S) = PGovernorDatum , -- | @since 0.1.0 PEq ) - via PIsDataReprInstances PGovernorDatum + +-- | @since 0.2.0 +instance DerivePlutusType PGovernorDatum where + type DPTStrat _ = PlutusTypeData -- | @since 0.1.0 instance PUnsafeLiftDecl PGovernorDatum where type PLifted PGovernorDatum = GovernorDatum @@ -188,29 +195,41 @@ instance PUnsafeLiftDecl PGovernorDatum where type PLifted PGovernorDatum = Gove deriving via (DerivePConstantViaData GovernorDatum PGovernorDatum) instance (PConstantDecl GovernorDatum) -- | @since 0.1.0 -deriving via PAsData (PIsDataReprInstances PGovernorDatum) instance PTryFrom PData (PAsData PGovernorDatum) +deriving anyclass instance PTryFrom PData PGovernorDatum {- | Plutarch-level version of 'GovernorRedeemer'. @since 0.1.0 -} -newtype PGovernorRedeemer (s :: S) - = PGovernorRedeemer (Term s PInteger) +data PGovernorRedeemer (s :: S) + = PCreateProposal + | PMintGATs + | PMutateGovernor deriving stock ( -- | @since 0.1.0 - GHC.Generic + Generic + , -- | @since 0.2.0 + Enum + , -- | @since 0.2.0 + Bounded ) deriving anyclass ( -- | @since 0.1.0 - Generic - ) - deriving - ( -- | @since 0.1.0 + SOP.Generic + , -- | @since 0.1.0 PlutusType , -- | @since 0.1.0 PIsData + , -- | @since 0.2.0 + PEq ) - via (DerivePNewtype' PGovernorRedeemer) + +-- | @since 0.2.0 +instance PTryFrom PData (PAsData PGovernorRedeemer) + +-- | @since 0.2.0 +instance DerivePlutusType PGovernorRedeemer where + type DPTStrat _ = PlutusTypeEnumData -- | @since 0.1.0 instance PUnsafeLiftDecl PGovernorRedeemer where type PLifted PGovernorRedeemer = GovernorRedeemer @@ -255,9 +274,9 @@ pisGovernorDatumValid = phoistAcyclic $ foldr1 (#&&) [ ptraceIfFalse "thresholds valid" $ - pisProposalThresholdsValid # datumF.proposalThresholds + pisProposalThresholdsValid # pfromData datumF.proposalThresholds , ptraceIfFalse "timings valid" $ - pisProposalTimingConfigValid # datumF.proposalTimings + pisProposalTimingConfigValid # pfromData datumF.proposalTimings , ptraceIfFalse "time range valid" $ pisMaxTimeRangeWidthValid # datumF.createProposalTimeRangeMaxWidth ] diff --git a/agora/Agora/Governor/Scripts.hs b/agora/Agora/Governor/Scripts.hs index 7bed9b5..db65911 100644 --- a/agora/Agora/Governor/Scripts.hs +++ b/agora/Agora/Governor/Scripts.hs @@ -74,6 +74,7 @@ import Agora.Utils ( validatorHashToAddress, validatorHashToTokenName, ) +import Data.Default (def) import Plutarch.Api.V1 ( PAddress, PCurrencySymbol, @@ -93,15 +94,6 @@ import Plutarch.Api.V1.AssetClass ( passetClass, passetClassValueOf, ) -import Plutarch.Extra.IsData (pmatchEnumFromData) -import Plutarch.Extra.List (pfirstJust) -import Plutarch.Extra.Map ( - plookup, - plookup', - ) - --------------------------------------------------------------------------------- - import Plutarch.Api.V1.ScriptContext ( pfindOutputsToAddress, pfindTxInByTxOutRef, @@ -112,6 +104,12 @@ import Plutarch.Api.V1.ScriptContext ( ) import "liqwid-plutarch-extra" Plutarch.Api.V1.Value (phasOnlyOneTokenOfCurrencySymbol, psymbolValueOf) import Plutarch.Extra.Field (pletAllC) +import Plutarch.Extra.IsData (pmatchEnumFromData) +import Plutarch.Extra.List (pfirstJust) +import Plutarch.Extra.Map ( + plookup, + plookup', + ) import Plutarch.Extra.Maybe (passertPDJust, passertPJust, pisDJust) import Plutarch.Extra.Record (mkRecordConstr, (.&), (.=)) import Plutarch.Extra.TermCont (pguardC, pletC, pletFieldsC, pmatchC, ptryFromC) @@ -177,12 +175,12 @@ governorPolicy gov = # "Governor output not found" #$ pfind # plam - ( \((pfield @"value" #) . pfromData -> value) -> + ( \((pfield @"value" #) -> value) -> psymbolValueOf # ownSymbol # value #== 1 ) # pfromData txInfoF.outputs - let datumHash = pfield @"datumHash" # pfromData govOutput + let datumHash = pfield @"datumHash" # govOutput datum = mustFindDatum' @PGovernorDatum # datumHash # txInfoF.datums pguardC "Governor output datum valid" $ pisGovernorDatumValid # datum @@ -292,7 +290,7 @@ governorValidator gov = ownInputF <- pletFieldsC @'["address", "value"] ownInput let ownAddress = pfromData $ ownInputF.address - (pfromData -> (oldGovernorDatum :: Term _ PGovernorDatum), _) <- ptryFromC datum' + (oldGovernorDatum :: Term _ PGovernorDatum, _) <- ptryFromC datum' oldGovernorDatumF <- pletAllC oldGovernorDatum -- Check that GST will be returned to the governor. @@ -314,9 +312,8 @@ governorValidator gov = passertPDJust # "Governor output doesn't have datum" # ownOutput.datumHash newGovernorDatum <- pletC $ - pfromData $ - passertPJust # "Ouput governor state datum not found" - #$ ptryFindDatum # outputGovernorStateDatumHash # txInfoF.datums + passertPJust # "Ouput governor state datum not found" + #$ ptryFindDatum # outputGovernorStateDatumHash # txInfoF.datums pguardC "New datum is valid" $ pisGovernorDatumValid # newGovernorDatum @@ -368,9 +365,9 @@ governorValidator gov = pguardC "Stake input doesn't have datum" $ pisDJust # stakeInputF.datumHash - let stakeInputDatum = mustFindDatum' @PStakeDatum # stakeInputF.datumHash # txInfoF.datums + let stakeInputDatum = mustFindDatum' @(PAsData PStakeDatum) # stakeInputF.datumHash # txInfoF.datums - stakeInputDatumF <- pletAllC stakeInputDatum + stakeInputDatumF <- pletAllC $ pto $ pfromData stakeInputDatum pguardC "Proposals created by the stake must not exceed the number stored in the governor." $ pnumCreatedProposals # stakeInputDatumF.lockedBy @@ -400,11 +397,11 @@ governorValidator gov = proposalOutputDatum' <- pletC $ - mustFindDatum' @PProposalDatum + mustFindDatum' @(PAsData PProposalDatum) # outputDatumHash # txInfoF.datums - proposalOutputDatum <- pletAllC proposalOutputDatum' + proposalOutputDatum <- pletAllC $ pto $ pfromData proposalOutputDatum' let expectedStartingTime = createProposalStartingTime @@ -462,7 +459,7 @@ governorValidator gov = #$ ptryFindDatum # stakeOutputDatumHash # txInfoF.datums stakeOutputLocks = - pfromData $ pfield @"lockedBy" # stakeOutputDatum + pfromData $ pfield @"lockedBy" #$ pto $ pfromData stakeOutputDatum -- The stake should be locked by the newly created proposal. newLock = @@ -493,29 +490,28 @@ governorValidator gov = proposalInputF <- pletFieldsC @'["datumHash"] $ pfield @"resolved" - #$ pfromData - $ passertPJust - # "Proposal input not found" - #$ pfind - # plam - ( \((pfield @"resolved" #) -> txOut) -> unTermCont $ do - txOutF <- pletFieldsC @'["address", "value"] txOut + #$ passertPJust + # "Proposal input not found" + #$ pfind + # plam + ( \((pfield @"resolved" #) -> txOut) -> unTermCont $ do + txOutF <- pletFieldsC @'["address", "value"] txOut - pure $ - psymbolValueOf # ppstSymbol # txOutF.value #== 1 - #&& txOutF.address #== pdata pproposalValidatorAddress - ) - # pfromData txInfoF.inputs + pure $ + psymbolValueOf # ppstSymbol # txOutF.value #== 1 + #&& txOutF.address #== pdata pproposalValidatorAddress + ) + # pfromData txInfoF.inputs proposalInputDatum <- pletC $ - mustFindDatum' @PProposalDatum + mustFindDatum' @(PAsData PProposalDatum) # proposalInputF.datumHash # txInfoF.datums proposalInputDatumF <- - pletFieldsC @'["effects", "status", "thresholds", "votes"] - proposalInputDatum + pletFieldsC @'["effects", "status", "thresholds", "votes"] $ + pto $ pfromData proposalInputDatum -- Check that the proposal state is advanced so that a proposal cannot be executed twice. @@ -552,12 +548,12 @@ governorValidator gov = pguardC "Output GATs is more than minted GATs" $ plength # outputsWithGAT #== gatCount - let gatOutputValidator' :: Term s (PMap _ PValidatorHash PDatumHash :--> PAsData PTxOut :--> PBool) + let gatOutputValidator' :: Term s (PMap _ PValidatorHash PDatumHash :--> PTxOut :--> PBool) gatOutputValidator' = phoistAcyclic $ plam - ( \effects (pfromData -> output') -> unTermCont $ do - output <- pletFieldsC @'["address", "datumHash"] $ output' + ( \effects output' -> unTermCont $ do + output <- pletFieldsC @'["address", "datumHash"] output' let scriptHash = passertPJust # "GAT receiver is not a script" @@ -644,7 +640,7 @@ governorSTSymbolFromGovernor :: Governor -> CurrencySymbol governorSTSymbolFromGovernor gov = mintingPolicySymbol policy where policy :: MintingPolicy - policy = mkMintingPolicy $ governorPolicy gov + policy = mkMintingPolicy def $ governorPolicy gov {- | Get the 'AssetClass' of GST. @@ -664,7 +660,7 @@ proposalSTSymbolFromGovernor :: Governor -> CurrencySymbol proposalSTSymbolFromGovernor gov = symbol where gstAC = governorSTAssetClassFromGovernor gov - policy = mkMintingPolicy $ proposalPolicy gstAC + policy = mkMintingPolicy def $ proposalPolicy gstAC symbol = mintingPolicySymbol policy {- | Get the 'AssetClass' of the proposal state token. @@ -683,7 +679,7 @@ proposalSTAssetClassFromGovernor gov = AssetClass (symbol, "") stakeSTSymbolFromGovernor :: Governor -> CurrencySymbol stakeSTSymbolFromGovernor gov = mintingPolicySymbol policy where - policy = mkMintingPolicy $ stakePolicy gov.gtClassRef + policy = mkMintingPolicy def $ stakePolicy gov.gtClassRef {- | Get the 'AssetClass' of the stake token. @@ -717,7 +713,7 @@ stakeValidatorHashFromGovernor :: Governor -> ValidatorHash stakeValidatorHashFromGovernor gov = validatorHash validator where params = stakeFromGovernor gov - validator = mkValidator $ stakeValidator params + validator = mkValidator def $ stakeValidator params {- | Get the 'Proposal' parameter, given the 'Governor' parameter. @@ -738,7 +734,7 @@ proposalValidatorHashFromGovernor :: Governor -> ValidatorHash proposalValidatorHashFromGovernor gov = validatorHash validator where params = proposalFromGovernor gov - validator = mkValidator $ proposalValidator params + validator = mkValidator def $ proposalValidator params {- | Get the hash of 'Agora.Proposal.proposalValidator'. @@ -747,7 +743,7 @@ proposalValidatorHashFromGovernor gov = validatorHash validator governorValidatorHash :: Governor -> ValidatorHash governorValidatorHash gov = validatorHash validator where - validator = mkValidator $ governorValidator gov + validator = mkValidator def $ governorValidator gov {- | Get the 'AuthorityToken' parameter given the 'Governor' parameter. @@ -763,5 +759,5 @@ authorityTokenFromGovernor gov = AuthorityToken $ governorSTAssetClassFromGovern authorityTokenSymbolFromGovernor :: Governor -> CurrencySymbol authorityTokenSymbolFromGovernor gov = mintingPolicySymbol policy where - policy = mkMintingPolicy $ authorityTokenPolicy params + policy = mkMintingPolicy def $ authorityTokenPolicy params params = authorityTokenFromGovernor gov diff --git a/agora/Agora/Plutarch/Orphans.hs b/agora/Agora/Plutarch/Orphans.hs index e203019..a1ccae3 100644 --- a/agora/Agora/Plutarch/Orphans.hs +++ b/agora/Agora/Plutarch/Orphans.hs @@ -1,135 +1,15 @@ {-# OPTIONS_GHC -Wno-orphans #-} -{- FIXME: All of the following instances and - types ought to belong in either plutarch or - plutarch-extra. - - A number of these have been "stolen" from Mango's - PR: https://github.com/Plutonomicon/plutarch/pull/438/ --} - module Agora.Plutarch.Orphans () where -import Control.Arrow (first) -import Plutarch.Api.V1 (PAddress, PCredential, PCurrencySymbol, PDatumHash, PMap, PMaybeData, PPOSIXTime, PPubKeyHash, PStakingCredential, PTokenName, PTxId, PTxOutRef, PValidatorHash, PValue) -import Plutarch.Builtin (PBuiltinMap) -import Plutarch.DataRepr (PIsDataReprInstances (..)) -import Plutarch.Extra.TermCont (ptryFromC) -import Plutarch.Numeric.Additive (AdditiveSemigroup ((+))) -import Plutarch.Reducible (Reduce, Reducible) -import Plutarch.TryFrom (PTryFrom (PTryFromExcess, ptryFrom')) -import Plutarch.Unsafe (punsafeCoerce) -import Prelude hiding ((+)) +import Plutarch.Api.V1 (PDatumHash) +import Plutarch.Builtin (PIsData (..)) -instance Reducible (f x y) => Reducible (Flip f y x) where - type Reduce (Flip f y x) = Reduce (f x y) +-- TODO: add checks +instance PTryFrom PData (PAsData PDatumHash) -newtype Flip f a b = Flip (f b a) +instance PTryFrom PData (PAsData PUnit) --- | @since 0.1.0 -instance PTryFrom PData (PAsData b) => PTryFrom PData (PAsData (DerivePNewtype c b)) where - type - PTryFromExcess PData (PAsData (DerivePNewtype c b)) = - PTryFromExcess PData (PAsData b) - ptryFrom' d k = - ptryFrom' @_ @(PAsData b) d $ k . first punsafeCoerce - --- | @since 0.1.0 -instance PTryFrom PData (PAsData PPubKeyHash) where - type PTryFromExcess PData (PAsData PPubKeyHash) = Flip Term PPubKeyHash - ptryFrom' opq = runTermCont $ do - (wrapped :: Term _ (PAsData PByteString), unwrapped :: Term _ PByteString) <- - ptryFromC @(PAsData PByteString) opq - tcont $ \f -> pif (plengthBS # unwrapped #== 28) (f ()) (ptraceError "a PubKeyHash should be 28 bytes long") - pure (punsafeCoerce wrapped, punsafeCoerce unwrapped) - --- | @since 0.1.0 -instance AdditiveSemigroup (Term s PPOSIXTime) where - (punsafeCoerce @_ @_ @PInteger -> x) + (punsafeCoerce @_ @_ @PInteger -> y) = punsafeCoerce $ x + y - --- | @since 0.1.0 -deriving via - PAsData (DerivePNewtype PPOSIXTime PInteger) - instance - PTryFrom PData (PAsData PPOSIXTime) - --- | @since 0.1.0 -deriving via - PAsData (PIsDataReprInstances PTxId) - instance - PTryFrom PData (PAsData PTxId) - --- | @since 0.1.0 -deriving via - PAsData (PIsDataReprInstances PTxOutRef) - instance - PTryFrom PData (PAsData PTxOutRef) - --- | @since 0.1.0 -deriving via - PAsData (DerivePNewtype (PMap g k v) (PBuiltinMap k v)) - instance - ( PTryFrom PData (PAsData k) - , PTryFrom PData (PAsData v) - ) => - PTryFrom PData (PAsData (PMap g k v)) - --- | @since 0.1.0 -instance PTryFrom PData (PAsData PValidatorHash) where - type PTryFromExcess PData (PAsData PValidatorHash) = Flip Term PValidatorHash - ptryFrom' opq = runTermCont $ do - (wrapped :: Term _ (PAsData PByteString), unwrapped :: Term _ PByteString) <- - ptryFromC @(PAsData PByteString) opq - tcont $ \f -> pif (plengthBS # unwrapped #== 28) (f ()) (ptraceError "a ValidatorHash should be 28 bytes long") - pure (punsafeCoerce wrapped, punsafeCoerce unwrapped) - --- | @since 0.1.0 -instance PTryFrom PData (PAsData PDatumHash) where - type PTryFromExcess PData (PAsData PDatumHash) = Flip Term PDatumHash - ptryFrom' opq = runTermCont $ do - (wrapped :: Term _ (PAsData PByteString), unwrapped :: Term _ PByteString) <- - tcont $ ptryFrom @(PAsData PByteString) opq - tcont $ \f -> pif (plengthBS # unwrapped #== 32) (f ()) (ptraceError "a DatumHash should be 32 bytes long") - pure (punsafeCoerce wrapped, punsafeCoerce unwrapped) - --- | @since 0.1.0 -deriving via - PAsData (DerivePNewtype PCurrencySymbol PByteString) - instance - PTryFrom PData (PAsData PCurrencySymbol) - --- | @since 0.1.0 -deriving via - PAsData (DerivePNewtype PTokenName PByteString) - instance - PTryFrom PData (PAsData PTokenName) - --- | @since 0.1.0 -deriving via - PAsData (DerivePNewtype (PValue k v) (PMap k PCurrencySymbol (PMap k PTokenName PInteger))) - instance - PTryFrom PData (PAsData (PValue k v)) - --- | @since 0.1.0 -deriving via - PAsData (PIsDataReprInstances (PMaybeData a)) - instance - PTryFrom PData (PAsData a) => PTryFrom PData (PAsData (PMaybeData a)) - --- | @since 0.1.0 -deriving via - PAsData (PIsDataReprInstances PAddress) - instance - PTryFrom PData (PAsData PAddress) - --- | @since 0.1.0 -deriving via - PAsData (PIsDataReprInstances PCredential) - instance - PTryFrom PData (PAsData PCredential) - --- | @since 0.1.0 -deriving via - PAsData (PIsDataReprInstances PStakingCredential) - instance - PTryFrom PData (PAsData PStakingCredential) +instance (PIsData a) => PIsData (PAsData a) where + pfromDataImpl = pfromData + pdataImpl = pdataImpl . pfromData diff --git a/agora/Agora/Proposal.hs b/agora/Agora/Proposal.hs index 9abd9b6..917d581 100644 --- a/agora/Agora/Proposal.hs +++ b/agora/Agora/Proposal.hs @@ -39,11 +39,11 @@ module Agora.Proposal ( pisProposalThresholdsValid, ) where +import Agora.Plutarch.Orphans () import Agora.Proposal.Time (PProposalStartingTime, PProposalTimingConfig, ProposalStartingTime, ProposalTimingConfig) import Agora.SafeMoney (GTTag) import Data.Tagged (Tagged) -import GHC.Generics qualified as GHC -import Generics.SOP (Generic, I (I)) +import Generics.SOP qualified as SOP import Plutarch.Api.V1 ( KeyGuarantees (Unsorted), PDatumHash, @@ -52,7 +52,7 @@ import Plutarch.Api.V1 ( PValidatorHash, ) import Plutarch.Api.V1.AssocMap qualified as PAssocMap -import Plutarch.DataRepr (DerivePConstantViaData (..), PDataFields, PIsDataReprInstances (..)) +import Plutarch.DataRepr (DerivePConstantViaData (..), PDataFields) import Plutarch.Extra.Comonad (pextract) import Plutarch.Extra.Field (pletAllC) import Plutarch.Extra.Function (pbuiltinUncurry) @@ -60,13 +60,13 @@ import Plutarch.Extra.IsData ( DerivePConstantViaDataList (..), DerivePConstantViaEnum (..), EnumIsData (..), + PlutusTypeEnumData, ProductIsData (ProductIsData), ) import Plutarch.Extra.List (pfirstJust) import Plutarch.Extra.Map qualified as PM import Plutarch.Extra.Map.Unsorted qualified as PUM import Plutarch.Extra.Maybe (pfromJust) -import Plutarch.Extra.Other (DerivePNewtype' (..)) import Plutarch.Extra.TermCont (pguardC, pletC, pmatchC) import Plutarch.Lift ( DerivePConstantViaNewtype (..), @@ -92,6 +92,14 @@ import PlutusTx.AssocMap qualified as AssocMap @since 0.1.0 -} newtype ProposalId = ProposalId {proposalTag :: Integer} + deriving stock + ( -- | @since 0.1.0 + Eq + , -- | @since 0.1.0 + Show + , -- | @since 0.1.0 + Generic + ) deriving newtype ( -- | @since 0.1.0 PlutusTx.ToData @@ -100,13 +108,9 @@ newtype ProposalId = ProposalId {proposalTag :: Integer} , -- | @since 0.1.0 PlutusTx.UnsafeFromData ) - deriving stock - ( -- | @since 0.1.0 - Eq - , -- | @since 0.1.0 - Show - , -- | @since 0.1.0 - GHC.Generic + deriving anyclass + ( -- | @since 0.2.0 + SOP.Generic ) {- | Encodes a result. Typically, for a Yes/No proposal, we encode it like this: @@ -127,7 +131,7 @@ newtype ResultTag = ResultTag {getResultTag :: Integer} , -- | @since 0.1.0 Ord , -- | @since 0.1.0 - GHC.Generic + Generic ) deriving newtype ( -- | @since 0.1.0 @@ -137,6 +141,10 @@ newtype ResultTag = ResultTag {getResultTag :: Integer} , -- | @since 0.1.0 PlutusTx.UnsafeFromData ) + deriving anyclass + ( -- | @since 0.2.0 + SOP.Generic + ) {- | The "status" of the proposal. This is only useful for state transitions that need to happen as a result of a transaction as opposed to time-based "periods". @@ -186,7 +194,7 @@ data ProposalStatus , -- | @since 0.1.0 Show , -- | @since 0.1.0 - GHC.Generic + Generic , -- | @since 0.2.0 Enum , -- | @since 0.2.0 @@ -194,7 +202,7 @@ data ProposalStatus ) deriving anyclass ( -- | @since 0.2.0 - Generic + SOP.Generic ) deriving ( -- | @since 0.1.0 @@ -230,9 +238,9 @@ data ProposalThresholds = ProposalThresholds , -- | @since 0.1.0 Show , -- | @since 0.1.0 - GHC.Generic + Generic ) - deriving anyclass (Generic) + deriving anyclass (SOP.Generic) PlutusTx.makeIsDataIndexed 'ProposalThresholds [('ProposalThresholds, 0)] @@ -252,19 +260,23 @@ PlutusTx.makeIsDataIndexed 'ProposalThresholds [('ProposalThresholds, 0)] newtype ProposalVotes = ProposalVotes { getProposalVotes :: AssocMap.Map ResultTag Integer } - deriving newtype - ( -- | @since 0.1.0 - PlutusTx.ToData - , -- | @since 0.1.0 - PlutusTx.FromData - ) deriving stock ( -- | @since 0.1.0 Eq , -- | @since 0.1.0 Show , -- | @since 0.1.0 - GHC.Generic + Generic + ) + deriving newtype + ( -- | @since 0.1.0 + PlutusTx.ToData + , -- | @since 0.1.0 + PlutusTx.FromData + ) + deriving anyclass + ( -- | @since 0.2.0 + SOP.Generic ) {- | Create a 'ProposalVotes' that has the same shape as the 'effects' field. @@ -307,9 +319,12 @@ data ProposalDatum = ProposalDatum , -- | @since 0.1.0 Show , -- | @since 0.1.0 - GHC.Generic + Generic + ) + deriving anyclass + ( -- | @since 0.2.0 + SOP.Generic ) - deriving anyclass (Generic) deriving ( -- | @since 0.1.0 PlutusTx.ToData @@ -367,7 +382,11 @@ data ProposalRedeemer , -- | @since 0.1.0 Show , -- | @since 0.1.0 - GHC.Generic + Generic + ) + deriving anyclass + ( -- | @since 0.2.0 + SOP.Generic ) -- | @since 0.1.0 @@ -395,7 +414,11 @@ data Proposal = Proposal , -- | @since 0.1.0 Eq , -- | @since 0.1.0 - GHC.Generic + Generic + ) + deriving anyclass + ( -- | @since 0.2.0 + SOP.Generic ) -------------------------------------------------------------------------------- @@ -406,19 +429,33 @@ data Proposal = Proposal @since 0.1.0 -} newtype PResultTag (s :: S) = PResultTag (Term s PInteger) - deriving - ( -- | @since 0.1.0 + deriving stock + ( -- | @since 0.2.0 + Generic + ) + deriving anyclass + ( -- | @since 0.2.0 + SOP.Generic + , -- @since 0.1.0 PlutusType , -- | @since 0.1.0 PIsData , -- | @since 0.1.0 PEq + , -- | @since 0.2.0 + PPartialOrd , -- | @since 0.1.0 POrd , -- | @since 0.2.0 PShow ) - via (DerivePNewtype PResultTag PInteger) + +-- | @since 0.2.0 +instance DerivePlutusType PResultTag where + type DPTStrat _ = PlutusTypeNewtype + +-- | @since 0.1.0 +instance PTryFrom PData (PAsData PResultTag) -- | @since 0.1.0 instance PUnsafeLiftDecl PResultTag where type PLifted PResultTag = ResultTag @@ -429,36 +466,38 @@ deriving via instance (PConstantDecl ResultTag) --- | @since 0.1.0 -deriving via - PAsData (DerivePNewtype PResultTag PInteger) - instance - PTryFrom PData (PAsData PResultTag) - {- | Plutarch-level version of 'PProposalId'. @since 0.1.0 -} newtype PProposalId (s :: S) = PProposalId (Term s PInteger) - deriving - ( -- | @since 0.1.0 + deriving stock + ( -- | @since 0.2.0 + Generic + ) + deriving anyclass + ( -- | @since 0.2.0 + SOP.Generic + , -- | @since 0.1.0 PlutusType , -- | @since 0.1.0 PIsData , -- | @since 0.1.0 PEq + , -- | @since 0.2.0 + PPartialOrd , -- | @since 0.1.0 POrd , -- | @since 0.2.0 PShow ) - via (DerivePNewtype PProposalId PInteger) + +-- | @since 0.2.0 +instance DerivePlutusType PProposalId where + type DPTStrat _ = PlutusTypeNewtype -- | @since 0.1.0 -deriving via - PAsData (DerivePNewtype PProposalId PInteger) - instance - PTryFrom PData (PAsData PProposalId) +instance PTryFrom PData (PAsData PProposalId) -- | @since 0.1.0 instance PUnsafeLiftDecl PProposalId where type PLifted PProposalId = ProposalId @@ -473,30 +512,43 @@ deriving via @since 0.1.0 -} -newtype PProposalStatus (s :: S) = PProposalStatus (Term s PInteger) +data PProposalStatus (s :: S) + = -- | @since 0.2.0 + PDraft + | -- | @since 0.2.0 + PVoting + | -- | @since 0.2.0 + PLocked + | -- | @since 0.2.0 + PFinished deriving stock ( -- | @since 0.1.0 - GHC.Generic + Generic + , -- | @since 0.2.0 + Bounded + , -- | @since 0.2.0 + Enum ) deriving anyclass ( -- | @since 0.1.0 - Generic - ) - deriving - ( -- | @since 0.1.0 + SOP.Generic + , -- | @since 0.1.0 PlutusType , -- | @since 0.1.0 PIsData , -- | @since 0.1.0 PEq ) - via (DerivePNewtype' PProposalStatus) + +-- | @since 0.2.0 +instance DerivePlutusType PProposalStatus where + type DPTStrat _ = PlutusTypeEnumData -- | @since 0.1.0 instance PUnsafeLiftDecl PProposalStatus where type PLifted PProposalStatus = ProposalStatus -- | @since 0.1.0 -deriving via PAsData (DerivePNewtype' PProposalStatus) instance PTryFrom PData (PAsData PProposalStatus) +instance PTryFrom PData (PAsData PProposalStatus) -- | @since 0.1.0 deriving via (DerivePConstantViaEnum ProposalStatus PProposalStatus) instance (PConstantDecl ProposalStatus) @@ -517,32 +569,26 @@ newtype PProposalThresholds (s :: S) = PProposalThresholds ) } deriving stock - ( -- | @since 0.1.0 - GHC.Generic - ) - deriving anyclass ( -- | @since 0.1.0 Generic ) deriving anyclass ( -- | @since 0.1.0 - PIsDataRepr - ) - deriving - ( -- | @since 0.1.0 + SOP.Generic + , -- | @since 0.1.0 PlutusType , -- | @since 0.1.0 PIsData , -- | @since 0.1.0 PDataFields ) - via (PIsDataReprInstances PProposalThresholds) + +-- | @since 0.2.0 +instance DerivePlutusType PProposalThresholds where + type DPTStrat _ = PlutusTypeData -- | @since 0.1.0 -deriving via - PAsData (PIsDataReprInstances PProposalThresholds) - instance - PTryFrom PData (PAsData PProposalThresholds) +instance PTryFrom PData PProposalThresholds -- | @since 0.1.0 instance PUnsafeLiftDecl PProposalThresholds where type PLifted PProposalThresholds = ProposalThresholds @@ -559,19 +605,25 @@ deriving via -} newtype PProposalVotes (s :: S) = PProposalVotes (Term s (PMap 'Unsorted PResultTag PInteger)) - deriving - ( -- | @since 0.1.0 + deriving stock + ( -- | @since 0.2.0 + Generic + ) + deriving anyclass + ( -- | @since 0.2.0 + SOP.Generic + , -- | @since 0.1.0 PlutusType , -- | @since 0.1.0 PIsData ) - via (DerivePNewtype PProposalVotes (PMap 'Unsorted PResultTag PInteger)) + +-- | @since 0.2.0 +instance DerivePlutusType PProposalVotes where + type DPTStrat _ = PlutusTypeNewtype -- | @since 0.1.0 -deriving via - PAsData (DerivePNewtype PProposalVotes (PMap 'Unsorted PResultTag PInteger)) - instance - PTryFrom PData (PAsData PProposalVotes) +instance PTryFrom PData (PAsData PProposalVotes) -- | @since 0.1.0 instance PUnsafeLiftDecl PProposalVotes where type PLifted PProposalVotes = ProposalVotes @@ -603,31 +655,25 @@ newtype PProposalDatum (s :: S) = PProposalDatum ) } deriving stock - ( -- | @since 0.1.0 - GHC.Generic - ) - deriving anyclass ( -- | @since 0.1.0 Generic ) deriving anyclass ( -- | @since 0.1.0 - PIsDataRepr - ) - deriving - ( -- | @since 0.1.0 + SOP.Generic + , -- | @since 0.1.0 PlutusType , -- | @since 0.1.0 PIsData - , -- | @since 0.1.0 - PDataFields , -- | @since 0.1.0 PEq ) - via (DerivePNewtype' PProposalDatum) --- | @since 0.1.0 -deriving via PAsData (DerivePNewtype' PProposalDatum) instance PTryFrom PData (PAsData PProposalDatum) +-- | @since 0.2.0 +instance DerivePlutusType PProposalDatum where + type DPTStrat _ = PlutusTypeNewtype + +instance PTryFrom PData (PAsData PProposalDatum) -- | @since 0.1.0 instance PUnsafeLiftDecl PProposalDatum where type PLifted PProposalDatum = ProposalDatum @@ -645,30 +691,24 @@ data PProposalRedeemer (s :: S) | PUnlock (Term s (PDataRecord '[])) | PAdvanceProposal (Term s (PDataRecord '[])) deriving stock - ( -- | @since 0.1.0 - GHC.Generic - ) - deriving anyclass ( -- | @since 0.1.0 Generic ) deriving anyclass ( -- | @since 0.1.0 - PIsDataRepr - ) - deriving - ( -- | @since 0.1.0 + SOP.Generic + , -- | @since 0.1.0 PlutusType , -- | @since 0.1.0 PIsData ) - via PIsDataReprInstances PProposalRedeemer + +-- | @since 0.2.0 +instance DerivePlutusType PProposalRedeemer where + type DPTStrat _ = PlutusTypeData -- | @since 0.1.0 -deriving via - PAsData (PIsDataReprInstances PProposalRedeemer) - instance - PTryFrom PData (PAsData PProposalRedeemer) +instance PTryFrom PData PProposalRedeemer -- | @since 0.1.0 instance PUnsafeLiftDecl PProposalRedeemer where type PLifted PProposalRedeemer = ProposalRedeemer diff --git a/agora/Agora/Proposal/Scripts.hs b/agora/Agora/Proposal/Scripts.hs index 29cd978..7e897e5 100644 --- a/agora/Agora/Proposal/Scripts.hs +++ b/agora/Agora/Proposal/Scripts.hs @@ -174,12 +174,10 @@ proposalValidator proposal = PJust ((pfield @"resolved" #) -> txOut) <- pmatchC $ pfindTxInByTxOutRef # txOutRef # txInfoF.inputs txOutF <- pletFieldsC @'["address", "value"] $ txOut - (pfromData -> proposalDatum, _) <- - ptryFromC @(PAsData PProposalDatum) datum - (pfromData -> proposalRedeemer, _) <- - ptryFromC @(PAsData PProposalRedeemer) redeemer + proposalDatum <- pfromData . fst <$> ptryFromC @(PAsData PProposalDatum) datum + proposalRedeemer <- fst <$> ptryFromC @PProposalRedeemer redeemer - proposalF <- pletAllC proposalDatum + proposalF <- pletAllC $ pto proposalDatum ownAddress <- pletC $ txOutF.address @@ -211,11 +209,12 @@ proposalValidator proposal = -- TODO: this is highly inefficient: O(n) for every output, -- Maybe we can cache the sorted datum map? let datum = - mustFindDatum' @PProposalDatum - # inputF.datumHash - # txInfoF.datums + pfromData $ + mustFindDatum' @(PAsData PProposalDatum) + # inputF.datumHash + # txInfoF.datums - proposalId = pfield @"proposalId" # datum + proposalId = pfield @"proposalId" # pto datum pure $ inputF.address #== ownAddress @@ -226,21 +225,34 @@ proposalValidator proposal = proposalOut <- pletC $ - mustFindDatum' @PProposalDatum - # (pfield @"datumHash" # ownOutput) - # txInfoF.datums + pfromData $ + mustFindDatum' @(PAsData PProposalDatum) + # (pfield @"datumHash" # ownOutput) + # txInfoF.datums proposalUnchanged <- pletC $ proposalOut #== proposalDatum proposalOutStatus <- pletC $ pfromData $ - pfield @"status" # proposalOut + pfield @"status" # pto proposalOut onlyStatusChanged <- pletC $ -- Only the status of proposals is updated. + -- Only the status of proposals is updated. + + -- Only the status of proposals is updated. + + -- Only the status of proposals is updated. + + -- Only the status of proposals is updated. + + -- Only the status of proposals is updated. + + -- Only the status of proposals is updated. + -- Only the status of proposals is updated. proposalOut #== mkRecordConstr @@ -263,9 +275,9 @@ proposalValidator proposal = stakeSTAssetClass <- pletC $ passetClass # pconstant stakeSym # pconstant stakeTn - filterStakeDatumHash :: Term _ (PAsData PTxOut :--> PMaybe (PAsData PDatumHash)) <- + filterStakeDatumHash :: Term _ (PTxOut :--> PMaybe (PAsData PDatumHash)) <- pletC $ - plam $ \(pfromData -> txOut) -> unTermCont $ do + plam $ \txOut -> unTermCont $ do txOutF <- pletFieldsC @'["value", "datumHash"] txOut pure $ pif @@ -333,12 +345,11 @@ proposalValidator proposal = let stake = pfromData $ pfromJust - #$ ptryFindDatum - @(PAsData PStakeDatum) + #$ ptryFindDatum @(PAsData PStakeDatum) # pfromData dh # txInfoF.datums - stakeF <- pletFieldsC @'["stakedAmount", "owner"] stake + stakeF <- pletFieldsC @'["stakedAmount", "owner"] $ pto stake PPair amount owners <- pmatchC l @@ -369,14 +380,10 @@ proposalValidator proposal = stakeOutputHash <- pletC $ pfromData $ phead # stakeOutputDatumHashes stakeIn :: Term _ PStakeDatum <- - pletC $ - pfromData $ - pfromJust #$ ptryFindDatum # stakeInputHash # txInfoF.datums + pletC $ pfromData $ pfromJust #$ ptryFindDatum # stakeInputHash # txInfoF.datums stakeOut :: Term _ PStakeDatum <- - pletC $ - pfromData $ - pfromJust #$ ptryFindDatum # stakeOutputHash # txInfoF.datums + pletC $ pfromData $ pfromJust #$ ptryFindDatum # stakeOutputHash # txInfoF.datums stakeUnchanged <- pletC $ stakeInputHash #== stakeOutputHash @@ -391,7 +398,7 @@ proposalValidator proposal = withSingleStake val = withSingleStake' #$ plam $ \stakeIn stakeOut stakeUnchange -> unTermCont $ do - stakeInF <- pletAllC stakeIn + stakeInF <- pletAllC $ pto stakeIn val stakeInF stakeOut stakeUnchange @@ -581,7 +588,7 @@ proposalValidator proposal = $ ptraceIfFalse "Proposal unchanged" proposalUnchanged -- At last, we ensure that all locks belong to this proposal will be removed. - stakeOutputLocks <- pletC $ pfield @"lockedBy" # stakeOut + stakeOutputLocks <- pletC $ pfield @"lockedBy" # pto stakeOut let templateStakeOut = mkRecordConstr @@ -662,13 +669,12 @@ proposalValidator proposal = pany # plam ( \( (pfield @"value" #) - . (pfield @"resolved" #) - . pfromData -> + . (pfield @"resolved" #) -> value ) -> psymbolValueOf # gstSymbol # value #== 1 ) - # txInfoF.inputs + # pfromData txInfoF.inputs let toFailedState = unTermCont $ do pguardC "Proposal should fail: not on time" $ diff --git a/agora/Agora/Proposal/Time.hs b/agora/Agora/Proposal/Time.hs index b272834..c6da780 100644 --- a/agora/Agora/Proposal/Time.hs +++ b/agora/Agora/Proposal/Time.hs @@ -30,9 +30,7 @@ module Agora.Proposal.Time ( pisMaxTimeRangeWidthValid, ) where -import Agora.Plutarch.Orphans () -import GHC.Generics qualified as GHC -import Generics.SOP (Generic, HasDatatypeInfo, I (I)) +import Generics.SOP qualified as SOP import Plutarch.Api.V1 ( PExtended (PFinite), PInterval (PInterval), @@ -44,7 +42,6 @@ import Plutarch.Api.V1 ( import Plutarch.DataRepr ( DerivePConstantViaData (..), PDataFields, - PIsDataReprInstances (..), ) import Plutarch.Extra.Field (pletAllC) import Plutarch.Extra.TermCont (pguardC, pmatchC) @@ -53,10 +50,9 @@ import Plutarch.Lift ( PConstantDecl, PUnsafeLiftDecl (..), ) -import Plutarch.Numeric.Additive (AdditiveSemigroup ((+))) import PlutusLedgerApi.V1.Time (POSIXTime) import PlutusTx qualified -import Prelude hiding ((+)) +import Prelude -------------------------------------------------------------------------------- @@ -67,8 +63,22 @@ import Prelude hiding ((+)) newtype ProposalStartingTime = ProposalStartingTime { getProposalStartingTime :: POSIXTime } - deriving newtype (PlutusTx.ToData, PlutusTx.FromData, PlutusTx.UnsafeFromData) - deriving stock (Eq, Show, GHC.Generic) + deriving stock + ( -- | @since 0.1.0 + Eq + , -- | @since 0.1.0 + Show + , -- | @since 0.1.0 + Generic + ) + deriving newtype + ( -- | @since 0.1.0 + PlutusTx.ToData + , -- | @since 0.1.0 + PlutusTx.FromData + , -- | @since 0.1.0 + PlutusTx.UnsafeFromData + ) {- | Configuration of proposal timings. @@ -92,9 +102,12 @@ data ProposalTimingConfig = ProposalTimingConfig , -- | @since 0.1.0 Show , -- | @since 0.1.0 - GHC.Generic + Generic + ) + deriving anyclass + ( -- | @since 0.1.0 + SOP.Generic ) - deriving anyclass (Generic) PlutusTx.makeIsDataIndexed 'ProposalTimingConfig [('ProposalTimingConfig, 0)] @@ -108,7 +121,7 @@ newtype MaxTimeRangeWidth = MaxTimeRangeWidth {getMaxWidth :: POSIXTime} , -- | @since 0.1.0 Ord , -- | @since 0.1.0 - GHC.Generic + Generic ) deriving newtype ( -- | @since 0.1.0 @@ -154,41 +167,47 @@ data PProposalTime (s :: S) = PProposalTime } deriving stock ( -- | @since 0.1.0 - GHC.Generic + Generic ) deriving anyclass ( -- | @since 0.1.0 - Generic + SOP.Generic + , -- | @since 0.1.0 + SOP.HasDatatypeInfo , -- | @since 0.1.0 PlutusType - , -- | @since 0.1.0 - HasDatatypeInfo , -- | @since 0.1.0 PEq ) +instance DerivePlutusType PProposalTime where + type DPTStrat _ = PlutusTypeScott + -- | Plutarch-level version of 'ProposalStartingTime'. newtype PProposalStartingTime (s :: S) = PProposalStartingTime (Term s PPOSIXTime) - deriving + deriving stock ( -- | @since 0.1.0 + Generic + ) + deriving anyclass + ( -- | @since 0.1.0 + SOP.Generic + , -- | @since 0.1.0 PlutusType , -- | @since 0.1.0 PIsData , -- | @since 0.1.0 PEq - , -- | @since 0.1.0 - POrd ) - via (DerivePNewtype PProposalStartingTime PPOSIXTime) + +instance DerivePlutusType PProposalStartingTime where + type DPTStrat _ = PlutusTypeNewtype -- | @since 0.1.0 instance PUnsafeLiftDecl PProposalStartingTime where type PLifted PProposalStartingTime = ProposalStartingTime -deriving via - PAsData (DerivePNewtype PProposalStartingTime PPOSIXTime) - instance - PTryFrom PData (PAsData PProposalStartingTime) +instance PTryFrom PData (PAsData PProposalStartingTime) -- | @since 0.1.0 deriving via @@ -213,29 +232,25 @@ newtype PProposalTimingConfig (s :: S) = PProposalTimingConfig ) } deriving stock - ( -- | @since 0.1.0 - GHC.Generic - ) - deriving anyclass ( -- | @since 0.1.0 Generic ) deriving anyclass ( -- | @since 0.1.0 - PIsDataRepr - ) - deriving - ( -- | @since 0.1.0 + SOP.Generic + , -- | @since 0.1.0 PlutusType , -- | @since 0.1.0 PIsData , -- | @since 0.1.0 PDataFields ) - via (PIsDataReprInstances PProposalTimingConfig) + +instance DerivePlutusType PProposalTimingConfig where + type DPTStrat _ = PlutusTypeData -- | @since 0.1.0 -deriving via PAsData (PIsDataReprInstances PProposalTimingConfig) instance PTryFrom PData (PAsData PProposalTimingConfig) +instance PTryFrom PData PProposalTimingConfig -- | @since 0.1.0 instance PUnsafeLiftDecl PProposalTimingConfig where @@ -250,20 +265,30 @@ deriving via -- | Plutarch-level version of 'MaxTimeRangeWidth'. newtype PMaxTimeRangeWidth (s :: S) = PMaxTimeRangeWidth (Term s PPOSIXTime) - deriving - ( -- | @since 0.1.0 + deriving stock + ( -- | @since 0.2.0 + Generic + ) + deriving anyclass + ( -- | @since 0.2.0 + SOP.Generic + , -- | @since 0.1.0 PlutusType , -- | @since 0.1.0 PIsData , -- | @since 0.1.0 PEq + , -- | @since 0.2.0 + PPartialOrd , -- | @since 0.1.0 POrd ) - via (DerivePNewtype PMaxTimeRangeWidth PPOSIXTime) + +instance DerivePlutusType PMaxTimeRangeWidth where + type DPTStrat _ = PlutusTypeNewtype -- | @since 0.1.0 -deriving via PAsData (DerivePNewtype PMaxTimeRangeWidth PPOSIXTime) instance PTryFrom PData (PAsData PMaxTimeRangeWidth) +instance PTryFrom PData (PAsData PMaxTimeRangeWidth) -- | @since 0.1.0 instance PUnsafeLiftDecl PMaxTimeRangeWidth where type PLifted PMaxTimeRangeWidth = MaxTimeRangeWidth diff --git a/agora/Agora/Stake.hs b/agora/Agora/Stake.hs index 46e1237..70a5f2c 100644 --- a/agora/Agora/Stake.hs +++ b/agora/Agora/Stake.hs @@ -31,20 +31,16 @@ module Agora.Stake ( pisIrrelevant, ) where -import Agora.Plutarch.Orphans () import Agora.Proposal (PProposalId, PResultTag, ProposalId (..), ResultTag (..)) import Agora.SafeMoney (GTTag) import Data.Tagged (Tagged (..)) -import GHC.Generics qualified as GHC -import Generics.SOP (Generic, HasDatatypeInfo, I (I)) +import Generics.SOP qualified as SOP import Plutarch.Api.V1 ( PMaybeData, PPubKeyHash, ) import Plutarch.DataRepr ( DerivePConstantViaData (..), - PDataFields, - PIsDataReprInstances (PIsDataReprInstances), ) import Plutarch.Extra.Field (pletAll) import Plutarch.Extra.IsData ( @@ -52,7 +48,6 @@ import Plutarch.Extra.IsData ( ProductIsData (ProductIsData), ) import Plutarch.Extra.List (pnotNull) -import Plutarch.Extra.Other (DerivePNewtype' (..)) import Plutarch.Extra.Sum (PSum (..)) import Plutarch.Extra.Traversable (pfoldMap) import Plutarch.Lift (PConstantDecl, PUnsafeLiftDecl (..)) @@ -76,7 +71,7 @@ data Stake = Stake } deriving stock ( -- | @since 0.1.0 - GHC.Generic + Generic ) {- | Locks that are stored in the stake datums for various purposes. @@ -133,11 +128,11 @@ data ProposalLock ( -- | @since 0.1.0 Show , -- | @since 0.1.0 - GHC.Generic + Generic ) deriving anyclass ( -- | @since 0.1.0 - Generic + SOP.Generic ) PlutusTx.makeIsDataIndexed @@ -176,7 +171,12 @@ data StakeRedeemer DelegateTo PubKeyHash | -- | Revoke the existing delegation. ClearDelegate - deriving stock (Show, GHC.Generic) + deriving stock + ( -- | @since 0.1.0 + Show + , -- | @since 0.1.0 + Generic + ) PlutusTx.makeIsDataIndexed ''StakeRedeemer @@ -208,8 +208,16 @@ data StakeDatum = StakeDatum -- ^ The current proposals locking this stake. This field must be empty -- for the stake to be usable for deposits and withdrawals. } - deriving stock (Show, GHC.Generic) - deriving anyclass (Generic) + deriving stock + ( -- | @since 0.1.0 + Show + , -- | @since 0.1.0 + Generic + ) + deriving anyclass + ( -- | @since 0.1.0 + SOP.Generic + ) deriving ( -- | @since 0.1.0 PlutusTx.ToData @@ -231,34 +239,28 @@ newtype PStakeDatum (s :: S) = PStakeDatum ( PDataRecord '[ "stakedAmount" ':= PDiscrete GTTag , "owner" ':= PPubKeyHash - , "delegatedTo" ':= PMaybeData PPubKeyHash + , "delegatedTo" ':= PMaybeData (PAsData PPubKeyHash) , "lockedBy" ':= PBuiltinList (PAsData PProposalLock) ] ) } deriving stock - ( -- | @since 0.1.0 - GHC.Generic - ) - deriving anyclass ( -- | @since 0.1.0 Generic ) deriving anyclass ( -- | @since 0.1.0 - PIsDataRepr - ) - deriving - ( -- | @since 0.1.0 + SOP.Generic + , -- | @since 0.1.0 PlutusType , -- | @since 0.1.0 PIsData - , -- | @since 0.1.0 - PDataFields , -- | @since 0.1.0 PEq ) - via (DerivePNewtype' PStakeDatum) + +instance DerivePlutusType PStakeDatum where + type DPTStrat _ = PlutusTypeNewtype -- | @since 0.1.0 instance Plutarch.Lift.PUnsafeLiftDecl PStakeDatum where @@ -271,10 +273,7 @@ deriving via (Plutarch.Lift.PConstantDecl StakeDatum) -- | @since 0.1.0 -deriving via - PAsData (DerivePNewtype' PStakeDatum) - instance - PTryFrom PData (PAsData PStakeDatum) +instance PTryFrom PData (PAsData PStakeDatum) {- | Plutarch-level redeemer for Stake scripts. @@ -291,30 +290,23 @@ data PStakeRedeemer (s :: S) | PDelegateTo (Term s (PDataRecord '["pkh" ':= PPubKeyHash])) | PClearDelegate (Term s (PDataRecord '[])) deriving stock - ( -- | @since 0.1.0 - GHC.Generic - ) - deriving anyclass ( -- | @since 0.1.0 Generic ) deriving anyclass ( -- | @since 0.1.0 - PIsDataRepr - ) - deriving - ( -- | @since 0.1.0 + SOP.Generic + , -- | @since 0.1.0 PlutusType , -- | @since 0.1.0 PIsData ) - via PIsDataReprInstances PStakeRedeemer + +instance DerivePlutusType PStakeRedeemer where + type DPTStrat _ = PlutusTypeData -- | @since 0.1.0 -deriving via - PAsData (PIsDataReprInstances PStakeRedeemer) - instance - PTryFrom PData (PAsData PStakeRedeemer) +instance PTryFrom PData PStakeRedeemer -- | @since 0.1.0 instance Plutarch.Lift.PUnsafeLiftDecl PStakeRedeemer where @@ -331,7 +323,13 @@ deriving via @since 0.2.0 -} data PProposalLock (s :: S) - = PCreated (Term s (PDataRecord '["created" ':= PProposalId])) + = PCreated + ( Term + s + ( PDataRecord + '["created" ':= PProposalId] + ) + ) | PVoted ( Term s @@ -342,34 +340,30 @@ data PProposalLock (s :: S) ) ) deriving stock - ( -- | @since 0.1.0 - GHC.Generic - ) - deriving anyclass ( -- | @since 0.1.0 Generic - , -- | @since 0.1.0 - HasDatatypeInfo ) deriving anyclass ( -- | @since 0.1.0 - PIsDataRepr - ) - deriving - ( -- | @since 0.1.0 + SOP.Generic + , -- | @since 0.1.0 + SOP.HasDatatypeInfo + , -- | @since 0.1.0 PlutusType , -- | @since 0.1.0 PIsData , -- | @since 0.1.0 PEq ) - via (PIsDataReprInstances PProposalLock) + +instance DerivePlutusType PProposalLock where + type DPTStrat _ = PlutusTypeData -- | @since 0.1.0 -deriving via - PAsData (PIsDataReprInstances PProposalLock) - instance - PTryFrom PData (PAsData PProposalLock) +instance PTryFrom PData PProposalLock + +-- | @since 0.2.0 +instance PTryFrom PData (PAsData PProposalLock) -- | @since 0.1.0 instance Plutarch.Lift.PUnsafeLiftDecl PProposalLock where @@ -399,9 +393,7 @@ instance PShow PProposalLock where pstakeLocked :: forall (s :: S). Term s (PStakeDatum :--> PBool) pstakeLocked = phoistAcyclic $ plam $ \stakeDatum -> - let locks :: Term _ (PBuiltinList (PAsData PProposalLock)) - locks = pfield @"lockedBy" # stakeDatum - in pnotNull # locks + pnotNull #$ pfield @"lockedBy" @(PBuiltinList _) # pto stakeDatum {- | Get the number of *alive* proposals that were created by the given stake. @@ -439,19 +431,22 @@ data PStakeRole (s :: S) PIrrelevant deriving stock ( -- | @since 0.2.0 - GHC.Generic + Generic ) deriving anyclass ( -- | @since 0.2.0 - Generic + SOP.Generic , -- | @since 0.2.0 PlutusType , -- | @since 0.2.0 - HasDatatypeInfo + SOP.HasDatatypeInfo , -- | @since 0.2.0 PEq ) +instance DerivePlutusType PStakeRole where + type DPTStrat _ = PlutusTypeScott + {- | Retutn true if the stake was used to voted on the proposal. @since 0.2.0 diff --git a/agora/Agora/Stake/Scripts.hs b/agora/Agora/Stake/Scripts.hs index ad57a96..cc40a7d 100644 --- a/agora/Agora/Stake/Scripts.hs +++ b/agora/Agora/Stake/Scripts.hs @@ -19,9 +19,9 @@ import Agora.Utils ( mustFindDatum', pdjust, pdnothing, - pmaybeData, pvalidatorHashToTokenName, ) +import Data.Default (def) import Data.Function (on) import Data.Tagged (Tagged (..), untag) import Plutarch.Api.V1 ( @@ -106,7 +106,11 @@ stakePolicy gtClassRef = pure $ pif (psymbolValueOf # ownSymbol # txOutF.value #== 1) - ( let datum = mustFindDatum' @PStakeDatum # txOutF.datumHash # txInfoF.datums + ( let datum = + pfromData $ + mustFindDatum' @(PAsData PStakeDatum) + # txOutF.datumHash + # txInfoF.datums in pnot # (pstakeLocked # datum) ) (pconstant False) @@ -146,7 +150,9 @@ stakePolicy gtClassRef = pletFieldsC @'["value", "address", "datumHash"] scriptOutputWithStakeST datumF <- pletFieldsC @'["owner", "stakedAmount"] $ - mustFindDatum' @PStakeDatum # outputF.datumHash # txInfoF.datums + pto $ + pfromData $ + mustFindDatum' @(PAsData PStakeDatum) # outputF.datumHash # txInfoF.datums let hasExpectedStake = ptraceIfFalse "Stake ouput has expected amount of stake token" $ @@ -232,12 +238,12 @@ stakeValidator stake = ] txInfo - (pfromData -> stakeRedeemer, _) <- ptryFromC redeemer + stakeRedeemer <- fst <$> ptryFromC redeemer -- TODO: Use PTryFrom let stakeDatum' :: Term _ PStakeDatum stakeDatum' = pfromData $ punsafeCoerce datum - stakeDatum <- pletAllC stakeDatum' + stakeDatum <- pletAllC $ pto stakeDatum' PSpending txOutRef <- pmatchC $ pfromData ctx.purpose @@ -253,16 +259,16 @@ stakeValidator stake = ownerSignsTransaction <- pletC $ signedBy # stakeDatum.owner delegateSignsTransaction <- - pletC $ - pmaybeData # pconstant False - # plam ((signedBy #) . pdata) - # stakeDatum.delegatedTo + pletC $ pconstant False + -- pmaybeData # pconstant False + -- # plam (signedBy #) + -- # stakeDatum.delegatedTo stCurrencySymbol <- pletC $ pconstant $ mintingPolicySymbol $ - mkMintingPolicy (stakePolicy stake.gtClassRef) + mkMintingPolicy def (stakePolicy stake.gtClassRef) mintedST <- pletC $ psymbolValueOf # stCurrencySymbol # txInfoF.mint valueSpent <- pletC $ pvalueSpent # txInfoF.inputs spentST <- pletC $ psymbolValueOf # stCurrencySymbol #$ valueSpent @@ -340,10 +346,10 @@ stakeValidator stake = ) # pfromData txInfoF.inputs - sortTxOuts :: Term _ (PBuiltinList (PAsData PTxOut) :--> PBuiltinList (PAsData PTxOut)) + sortTxOuts :: Term _ (PBuiltinList PTxOut :--> PBuiltinList PTxOut) sortTxOuts = phoistAcyclic $ plam (pmsortBy # plam ((#<) `on` (getDatumHash #)) #) where - getDatumHash :: Term _ (PAsData PTxOut :--> PDatumHash) + getDatumHash :: Term _ (PTxOut :--> PDatumHash) getDatumHash = phoistAcyclic $ plam ((pfromDJust #) . pfromData . (pfield @"datumHash" #)) sortedOwnInputs = sortTxOuts # ownInputs @@ -360,13 +366,14 @@ stakeValidator stake = pguardC "ST at inputs must be 1" $ spentST #== 1 - ownOutput <- pletC $ pfromData $ phead # ownOutputs + ownOutput <- pletC $ phead # ownOutputs stakeOut <- pletC $ - mustFindDatum' @PStakeDatum - # (pfield @"datumHash" # ownOutput) - # txInfoF.datums + pfromData $ + mustFindDatum' @(PAsData PStakeDatum) + # (pfield @"datumHash" # ownOutput) + # txInfoF.datums ownOutputValue <- pletC $ @@ -384,7 +391,7 @@ stakeValidator stake = ( #stakedAmount .= stakeDatum.stakedAmount .& #owner .= stakeDatum.owner .& #delegatedTo .= stakeDatum.delegatedTo - .& #lockedBy .= pfield @"lockedBy" # stakeOut + .& #lockedBy .= pfield @"lockedBy" # pto stakeOut ) in stakeOut #== templateStakeDatum @@ -524,7 +531,7 @@ stakeValidator stake = pguardC "Cannot delegate to the owner" $ pnot #$ stakeDatum.owner #== pkh - pure $ setDelegate #$ pdjust # pkh + pure $ setDelegate #$ pdjust # pdata pkh ------------------------------------------------------------ PClearDelegate _ -> diff --git a/agora/Agora/Treasury.hs b/agora/Agora/Treasury.hs index bc7cc73..6b66b7b 100644 --- a/agora/Agora/Treasury.hs +++ b/agora/Agora/Treasury.hs @@ -11,14 +11,16 @@ treasury. module Agora.Treasury (module Agora.Treasury) where import Agora.AuthorityToken (singleAuthorityTokenBurned) -import GHC.Generics qualified as GHC -import Generics.SOP (Generic) +import Generics.SOP qualified as SOP import Plutarch.Api.V1 (PValidator) import Plutarch.Api.V1.Contexts (PScriptPurpose (PMinting)) import "plutarch" Plutarch.Api.V1.Value (PValue) import Plutarch.Builtin (pforgetData) -import Plutarch.Extra.IsData (DerivePConstantViaEnum (..), EnumIsData (..)) -import Plutarch.Extra.Other (DerivePNewtype' (..)) +import Plutarch.Extra.IsData ( + DerivePConstantViaEnum (..), + EnumIsData (..), + PlutusTypeEnumData, + ) import Plutarch.Extra.TermCont (pguardC, pletC, pletFieldsC, pmatchC) import Plutarch.Lift (PConstantDecl (..), PLifted (..), PUnsafeLiftDecl) import Plutarch.TryFrom () @@ -38,7 +40,7 @@ data TreasuryRedeemer , -- | @since 0.1.0 Show , -- | @since 0.1.0 - GHC.Generic + Generic , -- | @since 0.2.0 Enum , -- | @since 0.2.0 @@ -46,7 +48,7 @@ data TreasuryRedeemer ) deriving anyclass ( -- | @since 0.2.0 - Generic + SOP.Generic ) deriving ( -- | @since 0.1.0 @@ -63,23 +65,29 @@ data TreasuryRedeemer @since 0.1.0 -} -newtype PTreasuryRedeemer (s :: S) - = PTreasuryRedeemer (Term s PInteger) +data PTreasuryRedeemer (s :: S) + = PSpendTreasuryGAT deriving stock ( -- | @since 0.1.0 - GHC.Generic + Generic + , -- | @since 0.2.0 + Bounded + , -- | @since 0.2.0 + Enum ) deriving anyclass ( -- | @since 0.1.0 - Generic + SOP.Generic ) - deriving + deriving anyclass ( -- | @since 0.1.0 PlutusType , -- | @since 0.1.0 PIsData ) - via (DerivePNewtype' PTreasuryRedeemer) + +instance DerivePlutusType PTreasuryRedeemer where + type DPTStrat _ = PlutusTypeEnumData -- | @since 0.1.0 instance PUnsafeLiftDecl PTreasuryRedeemer where diff --git a/agora/Agora/Utils.hs b/agora/Agora/Utils.hs index 1a6f6f9..6406b0c 100644 --- a/agora/Agora/Utils.hs +++ b/agora/Agora/Utils.hs @@ -1,4 +1,5 @@ {-# LANGUAGE QuantifiedConstraints #-} +{-# OPTIONS_GHC -Wno-unrecognised-pragmas #-} {- | Module : Agora.Utils @@ -30,6 +31,7 @@ module Agora.Utils ( pdnothing, ) where +import Data.Default (Default (def)) import Plutarch.Api.V1 ( AmountGuarantees, KeyGuarantees, @@ -139,7 +141,7 @@ pvalidatorHashToTokenName vh = pcon (PTokenName (pto vh)) @since 0.1.0 -} getMintingPolicySymbol :: ClosedTerm PMintingPolicy -> CurrencySymbol -getMintingPolicySymbol v = mintingPolicySymbol $ mkMintingPolicy v +getMintingPolicySymbol v = mintingPolicySymbol $ mkMintingPolicy def v {- | The entire value only contains one token of the given currency symbol. @@ -159,7 +161,7 @@ hasOnlyOneTokenOfCurrencySymbol = phoistAcyclic $ -} mustFindDatum' :: forall (datum :: PType). - (PIsData datum, PTryFrom PData (PAsData datum)) => + (PIsData datum, PTryFrom PData datum) => forall s. Term s @@ -172,7 +174,7 @@ mustFindDatum' = phoistAcyclic $ let dh = mustBePDJust # "Given TxOut dones't have a datum" # mdh dt = mustBePJust # "Datum not found in the transaction" #$ plookupTuple # dh # datums (d, _) <- ptryFromC $ pforgetData $ pdata dt - pure $ pfromData d + pure d {- | Extract the value stored in a PMaybe container. If there's no value, throw an error with the given message. diff --git a/bench.csv b/bench.csv index b5ca082..e3511ab 100644 --- a/bench.csv +++ b/bench.csv @@ -1,582 +1,582 @@ name,cpu,mem,size -Agora/Effects/Treasury Withdrawal Effect/effect/Simple,333137234,829671,3674 -Agora/Effects/Treasury Withdrawal Effect/effect/Simple with multiple treasuries ,492197164,1196783,3986 -Agora/Effects/Treasury Withdrawal Effect/effect/Mixed Assets,455817227,1103968,3859 -Agora/Effects/Governor Mutation Effect/validator/valid new governor datum/governor validator should pass,93089688,256879,8317 -Agora/Effects/Governor Mutation Effect/validator/valid new governor datum/effect validator should pass,112671240,312571,3751 -Agora/Stake/policy/stakeCreation,51392011,150393,2536 -Agora/Stake/validator/stakeDepositWithdraw deposit,186703362,508556,5339 -Agora/Stake/validator/stakeDepositWithdraw withdraw,186703362,508556,5327 -Agora/Stake/validator/set delegate/override existing delegate,113710649,295990,5391 -Agora/Stake/validator/set delegate/remove existing delegate,110917776,287315,5328 -Agora/Stake/validator/set delegate/set delegate to something,110293742,288964,5328 -Agora/Proposal/policy (proposal creation)/legal/proposal,33689644,100286,2011 -Agora/Proposal/policy (proposal creation)/legal/governor,325452519,864627,8802 -Agora/Proposal/policy (proposal creation)/legal/stake,155649225,408558,5993 -Agora/Proposal/policy (proposal creation)/illegal/invalid next proposal id/proposal,33689644,100286,2011 -Agora/Proposal/policy (proposal creation)/illegal/invalid next proposal id/stake,155649225,408558,5993 -Agora/Proposal/policy (proposal creation)/illegal/use other's stake/proposal,33689644,100286,1980 -Agora/Proposal/policy (proposal creation)/illegal/use other's stake/governor,325452519,864627,8771 -Agora/Proposal/policy (proposal creation)/illegal/altered stake/proposal,33689644,100286,2011 -Agora/Proposal/policy (proposal creation)/illegal/invalid stake locks/proposal,33689644,100286,2019 -Agora/Proposal/policy (proposal creation)/illegal/invalid stake locks/stake,161082885,423208,6001 -Agora/Proposal/policy (proposal creation)/illegal/has reached maximum proposals limit/proposal,33689644,100286,2031 -Agora/Proposal/policy (proposal creation)/illegal/has reached maximum proposals limit/stake,162111717,426666,6023 -Agora/Proposal/policy (proposal creation)/illegal/loose time range/proposal,33689644,100286,2011 -Agora/Proposal/policy (proposal creation)/illegal/loose time range/stake,155649225,408558,5993 -Agora/Proposal/policy (proposal creation)/illegal/open time range/proposal,33689644,100286,2007 -Agora/Proposal/policy (proposal creation)/illegal/open time range/stake,155649225,408558,5989 -Agora/Proposal/policy (proposal creation)/illegal/invalid proposal status/VotingReady/proposal,33689644,100286,2011 -Agora/Proposal/policy (proposal creation)/illegal/invalid proposal status/VotingReady/stake,155649225,408558,5993 -Agora/Proposal/policy (proposal creation)/illegal/invalid proposal status/Locked/proposal,33689644,100286,2011 -Agora/Proposal/policy (proposal creation)/illegal/invalid proposal status/Locked/stake,155649225,408558,5993 -Agora/Proposal/policy (proposal creation)/illegal/invalid proposal status/Finished/proposal,33689644,100286,2011 -Agora/Proposal/policy (proposal creation)/illegal/invalid proposal status/Finished/stake,155649225,408558,5993 -Agora/Proposal/validator/cosignature/legal/with 1 cosigners/proposal,236423139,660573,8414 -Agora/Proposal/validator/cosignature/legal/with 1 cosigners/stake,124318976,323958,5801 -Agora/Proposal/validator/cosignature/legal/with 5 cosigners/proposal,665645490,1853924,11068 -Agora/Proposal/validator/cosignature/legal/with 5 cosigners/stake,540258584,1423290,8335 -Agora/Proposal/validator/cosignature/legal/with 10 cosigners/proposal,1353965353,3721747,14387 -Agora/Proposal/validator/cosignature/legal/with 10 cosigners/stake,1155837179,3072861,11503 -Agora/Proposal/validator/cosignature/illegal/duplicate cosigners/stake,124318976,323958,5801 -Agora/Proposal/validator/cosignature/illegal/proposal status not Draft/with 1 cosigners/status: VotingReady/stake,124318976,323958,5801 -Agora/Proposal/validator/cosignature/illegal/proposal status not Draft/with 1 cosigners/status: Locked/stake,124318976,323958,5801 -Agora/Proposal/validator/cosignature/illegal/proposal status not Draft/with 1 cosigners/status: Finished/stake,124318976,323958,5801 -Agora/Proposal/validator/cosignature/illegal/proposal status not Draft/with 5 cosigners/status: VotingReady/stake,540258584,1423290,8335 -Agora/Proposal/validator/cosignature/illegal/proposal status not Draft/with 5 cosigners/status: Locked/stake,540258584,1423290,8335 -Agora/Proposal/validator/cosignature/illegal/proposal status not Draft/with 5 cosigners/status: Finished/stake,540258584,1423290,8335 -Agora/Proposal/validator/cosignature/illegal/proposal status not Draft/with 10 cosigners/status: VotingReady/stake,1155837179,3072861,11503 -Agora/Proposal/validator/cosignature/illegal/proposal status not Draft/with 10 cosigners/status: Locked/stake,1155837179,3072861,11503 -Agora/Proposal/validator/cosignature/illegal/proposal status not Draft/with 10 cosigners/status: Finished/stake,1155837179,3072861,11503 -Agora/Proposal/validator/voting/legal/ordinary/proposal,254761960,715291,8396 -Agora/Proposal/validator/voting/legal/ordinary/stake,142726431,376372,5827 -Agora/Proposal/validator/voting/legal/delegate/proposal,254862648,715291,8459 -Agora/Proposal/validator/voting/legal/delegate/stake,146143338,383398,5921 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to next state/from Draft to VotingReady/proposal,249151017,693538,8909 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to next state/from Draft to VotingReady/stake,134728077,350426,6137 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to next state/from VotingReady to Locked/proposal,293313747,804549,8918 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to next state/from VotingReady to Locked/stake,135450613,352690,6144 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to next state/from Locked to Finished/proposal,340814784,939138,10070 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to next state/from Locked to Finished/stake,190212214,480993,7296 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to next state/from Locked to Finished/governor,467588561,1169520,10118 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to next state/from Locked to Finished/authority,15806303,48240,3659 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to failed state/from Draft to Finished/proposal,244096325,682817,8911 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to failed state/from Draft to Finished/stake,135450613,352690,6139 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to failed state/from VotingReady to Finished/proposal,279799305,767410,8912 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to failed state/from VotingReady to Finished/stake,135450613,352690,6140 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to failed state/from Locked to Finished/proposal,280930283,769814,8912 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to failed state/from Locked to Finished/stake,135450613,352690,6140 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/stake,134728077,350426,6137 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/stake,135450613,352690,6144 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/stake,190212214,480993,7296 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/authority,15806303,48240,3659 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/insufficient cosigns/stake,134728077,350426,6137 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/insufficient votes/stake,135450613,352690,6140 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/ambiguous winning effect/stake,135450613,352690,6148 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/to next state too late/from Draft/stake,134728077,350426,6139 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/to next state too late/from VotingReady/stake,135450613,352690,6144 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/to next state too late/from Locked/stake,190212214,480993,7296 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/to next state too late/from Locked/governor,467588561,1169520,10118 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/to next state too late/from Locked/authority,15806303,48240,3659 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/altered output stake datum/from Locked/governor,467588561,1169520,10119 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/altered output stake datum/from Locked/authority,15806303,48240,3660 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/forget to mint GATs/proposal,316563738,866529,9359 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/forget to mint GATs/stake,177112055,455382,6585 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/mint GATs for wrong validators/proposal,348898466,963341,10297 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/mint GATs for wrong validators/stake,193760323,488220,7523 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/mint GATs for wrong validators/authority,17630300,53302,3886 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/mint GATs with bad token name/proposal,340814784,939138,9892 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/mint GATs with bad token name/stake,190212214,480993,7118 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/wrong GAT datum/proposal,340814784,939138,10064 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/wrong GAT datum/stake,190212214,480993,7290 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/wrong GAT datum/authority,15806303,48240,3653 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/invalid governor output datum/proposal,340814784,939138,10070 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/invalid governor output datum/stake,190212214,480993,7296 -Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/invalid governor output datum/authority,15806303,48240,3659 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to next state/from Draft to VotingReady/proposal,294552365,811630,9498 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to next state/from Draft to VotingReady/stake,134728077,350426,6530 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to next state/from VotingReady to Locked/proposal,342409981,932629,9507 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to next state/from VotingReady to Locked/stake,135450613,352690,6537 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to next state/from Locked to Finished/proposal,386216132,1057230,10660 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to next state/from Locked to Finished/stake,190212214,480993,7690 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to next state/from Locked to Finished/governor,487506732,1223965,10512 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to next state/from Locked to Finished/authority,15806303,48240,4053 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to failed state/from Draft to Finished/proposal,289497673,800909,9500 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to failed state/from Draft to Finished/stake,135450613,352690,6532 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to failed state/from VotingReady to Finished/proposal,325200653,885502,9501 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to failed state/from VotingReady to Finished/stake,135450613,352690,6533 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to failed state/from Locked to Finished/proposal,326331631,887906,9501 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to failed state/from Locked to Finished/stake,135450613,352690,6533 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/stake,134728077,350426,6530 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/stake,135450613,352690,6537 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/stake,190212214,480993,7690 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/authority,15806303,48240,4053 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/insufficient cosigns/stake,134728077,350426,6530 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/insufficient votes/stake,135450613,352690,6533 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/ambiguous winning effect/stake,135450613,352690,6545 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/to next state too late/from Draft/stake,134728077,350426,6532 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/to next state too late/from VotingReady/stake,135450613,352690,6537 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/to next state too late/from Locked/stake,190212214,480993,7690 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/to next state too late/from Locked/governor,487506732,1223965,10512 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/to next state too late/from Locked/authority,15806303,48240,4053 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/altered output stake datum/from Locked/governor,487506732,1223965,10513 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/altered output stake datum/from Locked/authority,15806303,48240,4054 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/forget to mint GATs/proposal,361965086,984621,9948 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/forget to mint GATs/stake,177112055,455382,6978 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/mint GATs for wrong validators/proposal,394299814,1081433,10887 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/mint GATs for wrong validators/stake,193760323,488220,7917 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/mint GATs for wrong validators/authority,17630300,53302,4280 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/mint GATs with bad token name/proposal,386216132,1057230,10481 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/mint GATs with bad token name/stake,190212214,480993,7511 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/wrong GAT datum/proposal,386216132,1057230,10654 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/wrong GAT datum/stake,190212214,480993,7684 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/wrong GAT datum/authority,15806303,48240,4047 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/invalid governor output datum/proposal,386216132,1057230,10660 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/invalid governor output datum/stake,190212214,480993,7690 -Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/invalid governor output datum/authority,15806303,48240,4053 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to next state/from Draft to VotingReady/proposal,430756409,1165906,11270 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to next state/from Draft to VotingReady/stake,134728077,350426,7711 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to next state/from VotingReady to Locked/proposal,489698683,1316869,11279 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to next state/from VotingReady to Locked/stake,135450613,352690,7718 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to next state/from Locked to Finished/proposal,522420176,1411506,12431 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to next state/from Locked to Finished/stake,190212214,480993,8870 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to next state/from Locked to Finished/governor,547261245,1387300,11692 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to next state/from Locked to Finished/authority,15806303,48240,5233 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to failed state/from Draft to Finished/proposal,425701717,1155185,11272 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to failed state/from Draft to Finished/stake,135450613,352690,7713 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to failed state/from VotingReady to Finished/proposal,461404697,1239778,11273 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to failed state/from VotingReady to Finished/stake,135450613,352690,7714 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to failed state/from Locked to Finished/proposal,462535675,1242182,11273 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to failed state/from Locked to Finished/stake,135450613,352690,7714 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/stake,134728077,350426,7711 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/stake,135450613,352690,7718 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/stake,190212214,480993,8870 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/authority,15806303,48240,5233 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/insufficient cosigns/stake,134728077,350426,7711 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/insufficient votes/stake,135450613,352690,7714 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/ambiguous winning effect/stake,135450613,352690,7738 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/to next state too late/from Draft/stake,134728077,350426,7713 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/to next state too late/from VotingReady/stake,135450613,352690,7718 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/to next state too late/from Locked/stake,190212214,480993,8870 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/to next state too late/from Locked/governor,547261245,1387300,11692 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/to next state too late/from Locked/authority,15806303,48240,5233 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/altered output stake datum/from Locked/governor,547261245,1387300,11693 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/altered output stake datum/from Locked/authority,15806303,48240,5234 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/forget to mint GATs/proposal,498169130,1338897,11720 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/forget to mint GATs/stake,177112055,455382,8159 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/mint GATs for wrong validators/proposal,530503858,1435709,12658 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/mint GATs for wrong validators/stake,193760323,488220,9097 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/mint GATs for wrong validators/authority,17630300,53302,5460 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/mint GATs with bad token name/proposal,522420176,1411506,12253 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/mint GATs with bad token name/stake,190212214,480993,8692 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/wrong GAT datum/proposal,522420176,1411506,12425 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/wrong GAT datum/stake,190212214,480993,8864 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/wrong GAT datum/authority,15806303,48240,5227 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/invalid governor output datum/proposal,522420176,1411506,12431 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/invalid governor output datum/stake,190212214,480993,8870 -Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/invalid governor output datum/authority,15806303,48240,5233 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to next state/from Draft to VotingReady/proposal,607775528,1728219,11679 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to next state/from Draft to VotingReady/stake,538035987,1412880,8786 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to next state/from VotingReady to Locked/proposal,315683095,866613,9275 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to next state/from VotingReady to Locked/stake,135450613,352690,6380 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to next state/from Locked to Finished/proposal,363184132,1001202,10427 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to next state/from Locked to Finished/stake,190212214,480993,7532 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to next state/from Locked to Finished/governor,474776509,1190208,10355 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to next state/from Locked to Finished/authority,15806303,48240,3896 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to failed state/from Draft to Finished/proposal,266465673,744881,9268 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to failed state/from Draft to Finished/stake,135450613,352690,6375 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to failed state/from VotingReady to Finished/proposal,302168653,829474,9269 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to failed state/from VotingReady to Finished/stake,135450613,352690,6376 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to failed state/from Locked to Finished/proposal,303299631,831878,9269 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to failed state/from Locked to Finished/stake,135450613,352690,6376 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/stake,538035987,1412880,8786 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/stake,135450613,352690,6380 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/stake,190212214,480993,7532 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/authority,15806303,48240,3896 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/insufficient cosigns/stake,523921701,1371870,8786 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/insufficient votes/stake,135450613,352690,6376 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/ambiguous winning effect/stake,135450613,352690,6384 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/to next state too late/from Draft/stake,538035987,1412880,8788 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/to next state too late/from VotingReady/stake,135450613,352690,6380 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/to next state too late/from Locked/stake,190212214,480993,7532 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/to next state too late/from Locked/governor,474776509,1190208,10355 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/to next state too late/from Locked/authority,15806303,48240,3896 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/altered output stake datum/from Locked/governor,474776509,1190208,10356 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/altered output stake datum/from Locked/authority,15806303,48240,3897 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/forget to mint GATs/proposal,338933086,928593,9715 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/forget to mint GATs/stake,177112055,455382,6820 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/mint GATs for wrong validators/proposal,371267814,1025405,10654 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/mint GATs for wrong validators/stake,193760323,488220,7759 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/mint GATs for wrong validators/authority,17630300,53302,4123 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/mint GATs with bad token name/proposal,363184132,1001202,10249 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/mint GATs with bad token name/stake,190212214,480993,7354 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/wrong GAT datum/proposal,363184132,1001202,10421 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/wrong GAT datum/stake,190212214,480993,7526 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/wrong GAT datum/authority,15806303,48240,3890 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/invalid governor output datum/proposal,363184132,1001202,10427 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/invalid governor output datum/stake,190212214,480993,7532 -Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/invalid governor output datum/authority,15806303,48240,3896 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to next state/from Draft to VotingReady/proposal,653176876,1846311,12270 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to next state/from Draft to VotingReady/stake,538035987,1412880,9180 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to next state/from VotingReady to Locked/proposal,364779329,994693,9865 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to next state/from VotingReady to Locked/stake,135450613,352690,6773 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to next state/from Locked to Finished/proposal,408585480,1119294,11018 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to next state/from Locked to Finished/stake,190212214,480993,7926 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to next state/from Locked to Finished/governor,494694680,1244653,10749 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to next state/from Locked to Finished/authority,15806303,48240,4290 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to failed state/from Draft to Finished/proposal,311867021,862973,9858 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to failed state/from Draft to Finished/stake,135450613,352690,6768 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to failed state/from VotingReady to Finished/proposal,347570001,947566,9859 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to failed state/from VotingReady to Finished/stake,135450613,352690,6769 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to failed state/from Locked to Finished/proposal,348700979,949970,9859 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to failed state/from Locked to Finished/stake,135450613,352690,6769 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/stake,538035987,1412880,9180 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/stake,135450613,352690,6773 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/stake,190212214,480993,7926 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/authority,15806303,48240,4290 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/insufficient cosigns/stake,523921701,1371870,9180 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/insufficient votes/stake,135450613,352690,6769 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/ambiguous winning effect/stake,135450613,352690,6781 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/to next state too late/from Draft/stake,538035987,1412880,9182 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/to next state too late/from VotingReady/stake,135450613,352690,6773 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/to next state too late/from Locked/stake,190212214,480993,7926 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/to next state too late/from Locked/governor,494694680,1244653,10749 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/to next state too late/from Locked/authority,15806303,48240,4290 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/altered output stake datum/from Locked/governor,494694680,1244653,10750 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/altered output stake datum/from Locked/authority,15806303,48240,4291 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/forget to mint GATs/proposal,384334434,1046685,10306 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/forget to mint GATs/stake,177112055,455382,7214 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/mint GATs for wrong validators/proposal,416669162,1143497,11245 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/mint GATs for wrong validators/stake,193760323,488220,8153 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/mint GATs for wrong validators/authority,17630300,53302,4517 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/mint GATs with bad token name/proposal,408585480,1119294,10839 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/mint GATs with bad token name/stake,190212214,480993,7747 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/wrong GAT datum/proposal,408585480,1119294,11012 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/wrong GAT datum/stake,190212214,480993,7920 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/wrong GAT datum/authority,15806303,48240,4284 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/invalid governor output datum/proposal,408585480,1119294,11018 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/invalid governor output datum/stake,190212214,480993,7926 -Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/invalid governor output datum/authority,15806303,48240,4290 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to next state/from Draft to VotingReady/proposal,789380920,2200587,14040 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to next state/from Draft to VotingReady/stake,538035987,1412880,10360 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to next state/from VotingReady to Locked/proposal,512068031,1378933,11636 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to next state/from VotingReady to Locked/stake,135450613,352690,7954 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to next state/from Locked to Finished/proposal,544789524,1473570,12788 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to next state/from Locked to Finished/stake,190212214,480993,9106 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to next state/from Locked to Finished/governor,554449193,1407988,11929 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to next state/from Locked to Finished/authority,15806303,48240,5470 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to failed state/from Draft to Finished/proposal,448071065,1217249,11629 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to failed state/from Draft to Finished/stake,135450613,352690,7949 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to failed state/from VotingReady to Finished/proposal,483774045,1301842,11630 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to failed state/from VotingReady to Finished/stake,135450613,352690,7950 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to failed state/from Locked to Finished/proposal,484905023,1304246,11630 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to failed state/from Locked to Finished/stake,135450613,352690,7950 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/stake,538035987,1412880,10360 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/stake,135450613,352690,7954 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/stake,190212214,480993,9106 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/authority,15806303,48240,5470 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/insufficient cosigns/stake,523921701,1371870,10360 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/insufficient votes/stake,135450613,352690,7950 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/ambiguous winning effect/stake,135450613,352690,7974 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/to next state too late/from Draft/stake,538035987,1412880,10362 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/to next state too late/from VotingReady/stake,135450613,352690,7954 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/to next state too late/from Locked/stake,190212214,480993,9106 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/to next state too late/from Locked/governor,554449193,1407988,11929 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/to next state too late/from Locked/authority,15806303,48240,5470 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/altered output stake datum/from Locked/governor,554449193,1407988,11930 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/altered output stake datum/from Locked/authority,15806303,48240,5471 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/forget to mint GATs/proposal,520538478,1400961,12077 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/forget to mint GATs/stake,177112055,455382,8395 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/mint GATs for wrong validators/proposal,552873206,1497773,13015 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/mint GATs for wrong validators/stake,193760323,488220,9333 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/mint GATs for wrong validators/authority,17630300,53302,5697 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/mint GATs with bad token name/proposal,544789524,1473570,12610 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/mint GATs with bad token name/stake,190212214,480993,8928 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/wrong GAT datum/proposal,544789524,1473570,12782 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/wrong GAT datum/stake,190212214,480993,9100 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/wrong GAT datum/authority,15806303,48240,5464 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/invalid governor output datum/proposal,544789524,1473570,12788 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/invalid governor output datum/stake,190212214,480993,9106 -Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/invalid governor output datum/authority,15806303,48240,5470 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to next state/from Draft to VotingReady/proposal,1143400598,3277042,15148 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to next state/from Draft to VotingReady/stake,1154355876,3064517,12104 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to next state/from VotingReady to Locked/proposal,343644780,944193,9727 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to next state/from VotingReady to Locked/stake,135450613,352690,6681 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to next state/from Locked to Finished/proposal,391145817,1078782,10879 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to next state/from Locked to Finished/stake,190212214,480993,7833 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to next state/from Locked to Finished/governor,483761444,1216068,10656 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to next state/from Locked to Finished/authority,15806303,48240,4197 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to failed state/from Draft to Finished/proposal,294427358,822461,9720 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to failed state/from Draft to Finished/stake,135450613,352690,6676 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to failed state/from VotingReady to Finished/proposal,330130338,907054,9721 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to failed state/from VotingReady to Finished/stake,135450613,352690,6677 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to failed state/from Locked to Finished/proposal,331261316,909458,9721 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to failed state/from Locked to Finished/stake,135450613,352690,6677 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/stake,1154355876,3064517,12104 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/stake,135450613,352690,6681 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/stake,190212214,480993,7833 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/authority,15806303,48240,4197 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/insufficient cosigns/stake,1168470162,3105527,12104 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/insufficient votes/stake,135450613,352690,6677 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/ambiguous winning effect/stake,135450613,352690,6685 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/to next state too late/from Draft/stake,1154355876,3064517,12106 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/to next state too late/from VotingReady/stake,135450613,352690,6681 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/to next state too late/from Locked/stake,190212214,480993,7833 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/to next state too late/from Locked/governor,483761444,1216068,10656 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/to next state too late/from Locked/authority,15806303,48240,4197 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/altered output stake datum/from Locked/governor,483761444,1216068,10657 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/altered output stake datum/from Locked/authority,15806303,48240,4198 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/forget to mint GATs/proposal,366894771,1006173,10168 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/forget to mint GATs/stake,177112055,455382,7122 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/mint GATs for wrong validators/proposal,399229499,1102985,11106 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/mint GATs for wrong validators/stake,193760323,488220,8060 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/mint GATs for wrong validators/authority,17630300,53302,4424 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/mint GATs with bad token name/proposal,391145817,1078782,10701 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/mint GATs with bad token name/stake,190212214,480993,7655 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/wrong GAT datum/proposal,391145817,1078782,10873 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/wrong GAT datum/stake,190212214,480993,7827 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/wrong GAT datum/authority,15806303,48240,4191 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/invalid governor output datum/proposal,391145817,1078782,10879 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/invalid governor output datum/stake,190212214,480993,7833 -Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/invalid governor output datum/authority,15806303,48240,4197 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to next state/from Draft to VotingReady/proposal,1188801946,3395134,15738 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to next state/from Draft to VotingReady/stake,1154355876,3064517,12498 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to next state/from VotingReady to Locked/proposal,392741014,1072273,10316 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to next state/from VotingReady to Locked/stake,135450613,352690,7074 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to next state/from Locked to Finished/proposal,436547165,1196874,11469 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to next state/from Locked to Finished/stake,190212214,480993,8227 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to next state/from Locked to Finished/governor,503679615,1270513,11050 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to next state/from Locked to Finished/authority,15806303,48240,4591 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to failed state/from Draft to Finished/proposal,339828706,940553,10309 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to failed state/from Draft to Finished/stake,135450613,352690,7069 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to failed state/from VotingReady to Finished/proposal,375531686,1025146,10310 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to failed state/from VotingReady to Finished/stake,135450613,352690,7070 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to failed state/from Locked to Finished/proposal,376662664,1027550,10310 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to failed state/from Locked to Finished/stake,135450613,352690,7070 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/stake,1154355876,3064517,12498 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/stake,135450613,352690,7074 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/stake,190212214,480993,8227 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/authority,15806303,48240,4591 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/insufficient cosigns/stake,1168470162,3105527,12498 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/insufficient votes/stake,135450613,352690,7070 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/ambiguous winning effect/stake,135450613,352690,7082 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/to next state too late/from Draft/stake,1154355876,3064517,12500 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/to next state too late/from VotingReady/stake,135450613,352690,7074 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/to next state too late/from Locked/stake,190212214,480993,8227 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/to next state too late/from Locked/governor,503679615,1270513,11050 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/to next state too late/from Locked/authority,15806303,48240,4591 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/altered output stake datum/from Locked/governor,503679615,1270513,11051 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/altered output stake datum/from Locked/authority,15806303,48240,4592 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/forget to mint GATs/proposal,412296119,1124265,10757 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/forget to mint GATs/stake,177112055,455382,7515 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/mint GATs for wrong validators/proposal,444630847,1221077,11696 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/mint GATs for wrong validators/stake,193760323,488220,8454 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/mint GATs for wrong validators/authority,17630300,53302,4818 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/mint GATs with bad token name/proposal,436547165,1196874,11290 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/mint GATs with bad token name/stake,190212214,480993,8048 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/wrong GAT datum/proposal,436547165,1196874,11463 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/wrong GAT datum/stake,190212214,480993,8221 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/wrong GAT datum/authority,15806303,48240,4585 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/invalid governor output datum/proposal,436547165,1196874,11469 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/invalid governor output datum/stake,190212214,480993,8227 -Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/invalid governor output datum/authority,15806303,48240,4591 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to next state/from Draft to VotingReady/proposal,1325005990,3749410,17509 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to next state/from Draft to VotingReady/stake,1154355876,3064517,13678 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to next state/from VotingReady to Locked/proposal,540029716,1456513,12088 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to next state/from VotingReady to Locked/stake,135450613,352690,8255 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to next state/from Locked to Finished/proposal,572751209,1551150,13241 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to next state/from Locked to Finished/stake,190212214,480993,9408 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to next state/from Locked to Finished/governor,563434128,1433848,12231 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to next state/from Locked to Finished/authority,15806303,48240,5772 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to failed state/from Draft to Finished/proposal,476032750,1294829,12081 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to failed state/from Draft to Finished/stake,135450613,352690,8250 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to failed state/from VotingReady to Finished/proposal,511735730,1379422,12082 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to failed state/from VotingReady to Finished/stake,135450613,352690,8251 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to failed state/from Locked to Finished/proposal,512866708,1381826,12082 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to failed state/from Locked to Finished/stake,135450613,352690,8251 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/stake,1154355876,3064517,13678 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/stake,135450613,352690,8255 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/stake,190212214,480993,9408 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/authority,15806303,48240,5772 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/insufficient cosigns/stake,1168470162,3105527,13678 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/insufficient votes/stake,135450613,352690,8251 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/ambiguous winning effect/stake,135450613,352690,8275 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/to next state too late/from Draft/stake,1154355876,3064517,13680 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/to next state too late/from VotingReady/stake,135450613,352690,8255 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/to next state too late/from Locked/stake,190212214,480993,9408 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/to next state too late/from Locked/governor,563434128,1433848,12231 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/to next state too late/from Locked/authority,15806303,48240,5772 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/altered output stake datum/from Locked/governor,563434128,1433848,12232 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/altered output stake datum/from Locked/authority,15806303,48240,5773 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/forget to mint GATs/proposal,548500163,1478541,12529 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/forget to mint GATs/stake,177112055,455382,8696 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/mint GATs for wrong validators/proposal,580834891,1575353,13467 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/mint GATs for wrong validators/stake,193760323,488220,9634 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/mint GATs for wrong validators/authority,17630300,53302,5998 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/mint GATs with bad token name/proposal,572751209,1551150,13062 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/mint GATs with bad token name/stake,190212214,480993,9229 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/wrong GAT datum/proposal,572751209,1551150,13235 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/wrong GAT datum/stake,190212214,480993,9402 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/wrong GAT datum/authority,15806303,48240,5765 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/invalid governor output datum/proposal,572751209,1551150,13241 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/invalid governor output datum/stake,190212214,480993,9408 -Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/invalid governor output datum/authority,15806303,48240,5772 -Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter: retract votes while voting/stake,131657472,344523,5807 -Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter: retract votes while voting/proposal,237178475,667478,8377 -Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter/creator: retract votes while voting/stake,134888718,353577,5823 -Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter/creator: retract votes while voting/proposal,250650682,707420,8388 -Agora/Proposal/validator/unlocking/legal/with 1 proposals/creator: remove creator locks when finished/stake,131657472,344523,5805 -Agora/Proposal/validator/unlocking/legal/with 1 proposals/creator: remove creator locks when finished/proposal,204970610,587333,8374 -Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter/creator: remove all locks when finished/stake,131657472,344523,5821 -Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter/creator: remove all locks when finished/proposal,213404867,612237,8386 -Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter: unlock after voting/Locked/stake,131657472,344523,5811 -Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter: unlock after voting/Locked/proposal,206286762,591217,8381 -Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter: unlock after voting/Finished/stake,131657472,344523,5811 -Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter: unlock after voting/Finished/proposal,206286762,591217,8381 -Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter/creator: remove vote locks when locked/stake,134888718,353577,5827 -Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter/creator: remove vote locks when locked/proposal,220290545,632551,8392 -Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter: retract votes while voting/stake,282446716,721159,7900 -Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter: retract votes while voting/proposal,379819723,1080142,10446 -Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter/creator: retract votes while voting/stake,298602946,766429,7976 -Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter/creator: retract votes while voting/proposal,445348258,1271396,10497 -Agora/Proposal/validator/unlocking/legal/with 5 proposals/creator: remove creator locks when finished/stake,282446716,721159,7889 -Agora/Proposal/validator/unlocking/legal/with 5 proposals/creator: remove creator locks when finished/proposal,313051422,905189,10438 -Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter/creator: remove all locks when finished/stake,282446716,721159,7970 -Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter/creator: remove all locks when finished/proposal,351440403,1016941,10491 -Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter: unlock after voting/Locked/stake,282446716,721159,7920 -Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter: unlock after voting/Locked/proposal,318520682,920265,10466 -Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter: unlock after voting/Finished/stake,282446716,721159,7920 -Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter: unlock after voting/Finished/proposal,318520682,920265,10466 -Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter/creator: remove vote locks when locked/stake,298602946,766429,7996 -Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter/creator: remove vote locks when locked/proposal,384580793,1112911,10517 -Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter: retract votes while voting/stake,470933271,1191954,10515 -Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter: retract votes while voting/proposal,558121283,1595972,13031 -Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter/creator: retract votes while voting/stake,503245731,1282494,10666 -Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter/creator: retract votes while voting/proposal,688720228,1976366,13132 -Agora/Proposal/validator/unlocking/legal/with 10 proposals/creator: remove creator locks when finished/stake,470933271,1191954,10495 -Agora/Proposal/validator/unlocking/legal/with 10 proposals/creator: remove creator locks when finished/proposal,448152437,1302509,13019 -Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter/creator: remove all locks when finished/stake,470933271,1191954,10655 -Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter/creator: remove all locks when finished/proposal,523984823,1522821,13121 -Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter: unlock after voting/Locked/stake,470933271,1191954,10555 -Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter: unlock after voting/Locked/proposal,458813082,1331575,13071 -Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter: unlock after voting/Finished/stake,470933271,1191954,10555 -Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter: unlock after voting/Finished/proposal,458813082,1331575,13071 -Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter/creator: remove vote locks when locked/stake,503245731,1282494,10706 -Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter/creator: remove vote locks when locked/proposal,589943603,1713361,13172 -Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter: retract votes while voting/stake,1677247223,4205042,27345 -Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter: retract votes while voting/proposal,1699251267,4897284,29650 -Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter/creator: retract votes while voting/stake,1812959555,4585310,28032 -Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter/creator: retract votes while voting/proposal,2246300836,6488174,30108 -Agora/Proposal/validator/unlocking/legal/with 42 proposals/creator: remove creator locks when finished/stake,1677247223,4205042,27260 -Agora/Proposal/validator/unlocking/legal/with 42 proposals/creator: remove creator locks when finished/proposal,1312798933,3845357,29605 -Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter/creator: remove all locks when finished/stake,1677247223,4205042,27971 -Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter/creator: remove all locks when finished/proposal,1628269111,4760453,30047 -Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter: unlock after voting/Locked/stake,1677247223,4205042,27513 -Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter: unlock after voting/Locked/proposal,1356684442,3963959,29818 -Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter: unlock after voting/Finished/stake,1677247223,4205042,27513 -Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter: unlock after voting/Finished/proposal,1356684442,3963959,29818 -Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter/creator: remove vote locks when locked/stake,1812959555,4585310,28201 -Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter/creator: remove vote locks when locked/proposal,1904265587,5556241,30277 -"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Voter , status: Draft/stake",131657472,344523,5807 -"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Voter , status: Locked/stake",131657472,344523,5807 -"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Voter , status: Finished/stake",131657472,344523,5807 -"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Creator , status: Draft/stake",127286886,332673,5809 -"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Creator , status: Locked/stake",127286886,332673,5809 -"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Creator , status: Finished/stake",127286886,332673,5809 -"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Both , status: Draft/stake",134888718,353577,5823 -"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Both , status: Locked/stake",134888718,353577,5823 -"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Both , status: Finished/stake",134888718,353577,5823 -"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Irrelevant , status: Draft/stake",124055640,323619,5789 -"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Irrelevant , status: Locked/stake",124055640,323619,5789 -"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Irrelevant , status: Finished/stake",124055640,323619,5789 -Agora/Proposal/validator/unlocking/illegal/with 1 proposals/unlock an irrelevant stake/status: Draft retract votes: True/stake,124055640,323619,5789 -Agora/Proposal/validator/unlocking/illegal/with 1 proposals/unlock an irrelevant stake/status: Draft retract votes: False/stake,124055640,323619,5789 -Agora/Proposal/validator/unlocking/illegal/with 1 proposals/unlock an irrelevant stake/status: VotingReady retract votes: True/stake,124055640,323619,5789 -Agora/Proposal/validator/unlocking/illegal/with 1 proposals/unlock an irrelevant stake/status: VotingReady retract votes: False/stake,124055640,323619,5789 -Agora/Proposal/validator/unlocking/illegal/with 1 proposals/unlock an irrelevant stake/status: Locked retract votes: True/stake,124055640,323619,5789 -Agora/Proposal/validator/unlocking/illegal/with 1 proposals/unlock an irrelevant stake/status: Locked retract votes: False/stake,124055640,323619,5789 -Agora/Proposal/validator/unlocking/illegal/with 1 proposals/unlock an irrelevant stake/status: Finished retract votes: True/stake,124055640,323619,5789 -Agora/Proposal/validator/unlocking/illegal/with 1 proposals/unlock an irrelevant stake/status: Finished retract votes: False/stake,124055640,323619,5789 -Agora/Proposal/validator/unlocking/illegal/with 1 proposals/remove creator too early/status: Draft/stake,131657472,344523,5805 -Agora/Proposal/validator/unlocking/illegal/with 1 proposals/remove creator too early/status: VotingReady/stake,131657472,344523,5805 -Agora/Proposal/validator/unlocking/illegal/with 1 proposals/remove creator too early/status: Locked/stake,131657472,344523,5805 -Agora/Proposal/validator/unlocking/illegal/with 1 proposals/creator: retract votes/stake,131657472,344523,5803 -"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Voter , status: Draft/stake",282446716,721159,7900 -"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Voter , status: Locked/stake",282446716,721159,7900 -"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Voter , status: Finished/stake",282446716,721159,7900 -"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Creator , status: Draft/stake",275797450,703717,7906 -"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Creator , status: Locked/stake",275797450,703717,7906 -"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Creator , status: Finished/stake",275797450,703717,7906 -"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Both , status: Draft/stake",298602946,766429,7976 -"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Both , status: Locked/stake",298602946,766429,7976 -"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Both , status: Finished/stake",298602946,766429,7976 -"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Irrelevant , status: Draft/stake",259641220,658447,7817 -"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Irrelevant , status: Locked/stake",259641220,658447,7817 -"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Irrelevant , status: Finished/stake",259641220,658447,7817 -Agora/Proposal/validator/unlocking/illegal/with 5 proposals/unlock an irrelevant stake/status: Draft retract votes: True/stake,259641220,658447,7817 -Agora/Proposal/validator/unlocking/illegal/with 5 proposals/unlock an irrelevant stake/status: Draft retract votes: False/stake,259641220,658447,7817 -Agora/Proposal/validator/unlocking/illegal/with 5 proposals/unlock an irrelevant stake/status: VotingReady retract votes: True/stake,259641220,658447,7817 -Agora/Proposal/validator/unlocking/illegal/with 5 proposals/unlock an irrelevant stake/status: VotingReady retract votes: False/stake,259641220,658447,7817 -Agora/Proposal/validator/unlocking/illegal/with 5 proposals/unlock an irrelevant stake/status: Locked retract votes: True/stake,259641220,658447,7817 -Agora/Proposal/validator/unlocking/illegal/with 5 proposals/unlock an irrelevant stake/status: Locked retract votes: False/stake,259641220,658447,7817 -Agora/Proposal/validator/unlocking/illegal/with 5 proposals/unlock an irrelevant stake/status: Finished retract votes: True/stake,259641220,658447,7817 -Agora/Proposal/validator/unlocking/illegal/with 5 proposals/unlock an irrelevant stake/status: Finished retract votes: False/stake,259641220,658447,7817 -Agora/Proposal/validator/unlocking/illegal/with 5 proposals/remove creator too early/status: Draft/stake,282446716,721159,7889 -Agora/Proposal/validator/unlocking/illegal/with 5 proposals/remove creator too early/status: VotingReady/stake,282446716,721159,7889 -Agora/Proposal/validator/unlocking/illegal/with 5 proposals/remove creator too early/status: Locked/stake,282446716,721159,7889 -Agora/Proposal/validator/unlocking/illegal/with 5 proposals/creator: retract votes/stake,282446716,721159,7879 -"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Voter , status: Draft/stake",470933271,1191954,10515 -"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Voter , status: Locked/stake",470933271,1191954,10515 -"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Voter , status: Finished/stake",470933271,1191954,10515 -"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Creator , status: Draft/stake",461435655,1167522,10526 -"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Creator , status: Locked/stake",461435655,1167522,10526 -"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Creator , status: Finished/stake",461435655,1167522,10526 -"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Both , status: Draft/stake",503245731,1282494,10666 -"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Both , status: Locked/stake",503245731,1282494,10666 -"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Both , status: Finished/stake",503245731,1282494,10666 -"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Irrelevant , status: Draft/stake",429123195,1076982,10352 -"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Irrelevant , status: Locked/stake",429123195,1076982,10352 -"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Irrelevant , status: Finished/stake",429123195,1076982,10352 -Agora/Proposal/validator/unlocking/illegal/with 10 proposals/unlock an irrelevant stake/status: Draft retract votes: True/stake,429123195,1076982,10352 -Agora/Proposal/validator/unlocking/illegal/with 10 proposals/unlock an irrelevant stake/status: Draft retract votes: False/stake,429123195,1076982,10352 -Agora/Proposal/validator/unlocking/illegal/with 10 proposals/unlock an irrelevant stake/status: VotingReady retract votes: True/stake,429123195,1076982,10352 -Agora/Proposal/validator/unlocking/illegal/with 10 proposals/unlock an irrelevant stake/status: VotingReady retract votes: False/stake,429123195,1076982,10352 -Agora/Proposal/validator/unlocking/illegal/with 10 proposals/unlock an irrelevant stake/status: Locked retract votes: True/stake,429123195,1076982,10352 -Agora/Proposal/validator/unlocking/illegal/with 10 proposals/unlock an irrelevant stake/status: Locked retract votes: False/stake,429123195,1076982,10352 -Agora/Proposal/validator/unlocking/illegal/with 10 proposals/unlock an irrelevant stake/status: Finished retract votes: True/stake,429123195,1076982,10352 -Agora/Proposal/validator/unlocking/illegal/with 10 proposals/unlock an irrelevant stake/status: Finished retract votes: False/stake,429123195,1076982,10352 -Agora/Proposal/validator/unlocking/illegal/with 10 proposals/remove creator too early/status: Draft/stake,470933271,1191954,10495 -Agora/Proposal/validator/unlocking/illegal/with 10 proposals/remove creator too early/status: VotingReady/stake,470933271,1191954,10495 -Agora/Proposal/validator/unlocking/illegal/with 10 proposals/remove creator too early/status: Locked/stake,470933271,1191954,10495 -Agora/Proposal/validator/unlocking/illegal/with 10 proposals/creator: retract votes/stake,470933271,1191954,10474 -"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Voter , status: Draft/stake",1677247223,4205042,27345 -"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Voter , status: Locked/stake",1677247223,4205042,27345 -"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Voter , status: Finished/stake",1677247223,4205042,27345 -"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Creator , status: Draft/stake",1649520167,4135874,27406 -"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Creator , status: Locked/stake",1649520167,4135874,27406 -"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Creator , status: Finished/stake",1649520167,4135874,27406 -"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Both , status: Draft/stake",1812959555,4585310,28032 -"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Both , status: Locked/stake",1812959555,4585310,28032 -"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Both , status: Finished/stake",1812959555,4585310,28032 -"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Irrelevant , status: Draft/stake",1513807835,3755606,26632 -"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Irrelevant , status: Locked/stake",1513807835,3755606,26632 -"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Irrelevant , status: Finished/stake",1513807835,3755606,26632 -Agora/Proposal/validator/unlocking/illegal/with 42 proposals/unlock an irrelevant stake/status: Draft retract votes: True/stake,1513807835,3755606,26632 -Agora/Proposal/validator/unlocking/illegal/with 42 proposals/unlock an irrelevant stake/status: Draft retract votes: False/stake,1513807835,3755606,26632 -Agora/Proposal/validator/unlocking/illegal/with 42 proposals/unlock an irrelevant stake/status: VotingReady retract votes: True/stake,1513807835,3755606,26632 -Agora/Proposal/validator/unlocking/illegal/with 42 proposals/unlock an irrelevant stake/status: VotingReady retract votes: False/stake,1513807835,3755606,26632 -Agora/Proposal/validator/unlocking/illegal/with 42 proposals/unlock an irrelevant stake/status: Locked retract votes: True/stake,1513807835,3755606,26632 -Agora/Proposal/validator/unlocking/illegal/with 42 proposals/unlock an irrelevant stake/status: Locked retract votes: False/stake,1513807835,3755606,26632 -Agora/Proposal/validator/unlocking/illegal/with 42 proposals/unlock an irrelevant stake/status: Finished retract votes: True/stake,1513807835,3755606,26632 -Agora/Proposal/validator/unlocking/illegal/with 42 proposals/unlock an irrelevant stake/status: Finished retract votes: False/stake,1513807835,3755606,26632 -Agora/Proposal/validator/unlocking/illegal/with 42 proposals/remove creator too early/status: Draft/stake,1677247223,4205042,27260 -Agora/Proposal/validator/unlocking/illegal/with 42 proposals/remove creator too early/status: VotingReady/stake,1677247223,4205042,27260 -Agora/Proposal/validator/unlocking/illegal/with 42 proposals/remove creator too early/status: Locked/stake,1677247223,4205042,27260 -Agora/Proposal/validator/unlocking/illegal/with 42 proposals/creator: retract votes/stake,1677247223,4205042,27176 -Agora/AuthorityToken/singleAuthorityTokenBurned/Correct simple,20570665,54655,725 -Agora/AuthorityToken/singleAuthorityTokenBurned/Correct many inputs,32757063,87013,825 -Agora/Treasury/Validator/Positive/Allows for effect changes,31277082,80782,1450 -Agora/AuthorityToken/singleAuthorityTokenBurned/Correct simple,20570665,54655,725 -Agora/AuthorityToken/singleAuthorityTokenBurned/Correct many inputs,32757063,87013,825 -Agora/Governor/policy/totally legal,60002734,167736,2268 -Agora/Governor/validator/mutate/legal,100216324,268169,8181 +Agora/Effects/Treasury Withdrawal Effect/effect/Simple,12736207,40996,2908 +Agora/Effects/Treasury Withdrawal Effect/effect/Simple with multiple treasuries ,12736207,40996,3220 +Agora/Effects/Treasury Withdrawal Effect/effect/Mixed Assets,12736207,40996,3093 +Agora/Effects/Governor Mutation Effect/validator/valid new governor datum/governor validator should pass,108270758,296852,6444 +Agora/Effects/Governor Mutation Effect/validator/valid new governor datum/effect validator should pass,7973222,20696,3222 +Agora/Stake/policy/stakeCreation,53357294,155623,2050 +Agora/Stake/validator/stakeDepositWithdraw deposit,187795456,518604,3825 +Agora/Stake/validator/stakeDepositWithdraw withdraw,187795456,518604,3813 +Agora/Stake/validator/set delegate/override existing delegate,100639801,266338,3877 +Agora/Stake/validator/set delegate/remove existing delegate,98230359,259005,3814 +Agora/Stake/validator/set delegate/set delegate to something,100539113,266338,3814 +Agora/Proposal/policy (proposal creation)/legal/proposal,33873644,101086,1842 +Agora/Proposal/policy (proposal creation)/legal/governor,354848880,943893,6928 +Agora/Proposal/policy (proposal creation)/legal/stake,153933633,408520,4479 +Agora/Proposal/policy (proposal creation)/illegal/invalid next proposal id/proposal,33873644,101086,1842 +Agora/Proposal/policy (proposal creation)/illegal/invalid next proposal id/stake,153933633,408520,4479 +Agora/Proposal/policy (proposal creation)/illegal/use other's stake/proposal,33873644,101086,1811 +Agora/Proposal/policy (proposal creation)/illegal/use other's stake/governor,354848880,943893,6897 +Agora/Proposal/policy (proposal creation)/illegal/altered stake/proposal,33873644,101086,1842 +Agora/Proposal/policy (proposal creation)/illegal/invalid stake locks/proposal,33873644,101086,1850 +Agora/Proposal/policy (proposal creation)/illegal/invalid stake locks/stake,159367293,423170,4487 +Agora/Proposal/policy (proposal creation)/illegal/has reached maximum proposals limit/proposal,33873644,101086,1862 +Agora/Proposal/policy (proposal creation)/illegal/has reached maximum proposals limit/stake,160396125,426628,4509 +Agora/Proposal/policy (proposal creation)/illegal/loose time range/proposal,33873644,101086,1842 +Agora/Proposal/policy (proposal creation)/illegal/loose time range/stake,153933633,408520,4479 +Agora/Proposal/policy (proposal creation)/illegal/open time range/proposal,33873644,101086,1838 +Agora/Proposal/policy (proposal creation)/illegal/open time range/stake,153933633,408520,4475 +Agora/Proposal/policy (proposal creation)/illegal/invalid proposal status/VotingReady/proposal,33873644,101086,1842 +Agora/Proposal/policy (proposal creation)/illegal/invalid proposal status/VotingReady/stake,153933633,408520,4479 +Agora/Proposal/policy (proposal creation)/illegal/invalid proposal status/Locked/proposal,33873644,101086,1842 +Agora/Proposal/policy (proposal creation)/illegal/invalid proposal status/Locked/stake,153933633,408520,4479 +Agora/Proposal/policy (proposal creation)/illegal/invalid proposal status/Finished/proposal,33873644,101086,1842 +Agora/Proposal/policy (proposal creation)/illegal/invalid proposal status/Finished/stake,153933633,408520,4479 +Agora/Proposal/validator/cosignature/legal/with 1 cosigners/proposal,270612694,756318,6994 +Agora/Proposal/validator/cosignature/legal/with 1 cosigners/stake,120950501,317982,4287 +Agora/Proposal/validator/cosignature/legal/with 5 cosigners/proposal,711284625,1983397,9648 +Agora/Proposal/validator/cosignature/legal/with 5 cosigners/stake,552610861,1480482,6821 +Agora/Proposal/validator/cosignature/legal/with 10 cosigners/proposal,1413916463,3893380,12967 +Agora/Proposal/validator/cosignature/legal/with 10 cosigners/stake,1187840396,3209013,9989 +Agora/Proposal/validator/cosignature/illegal/duplicate cosigners/stake,120950501,317982,4287 +Agora/Proposal/validator/cosignature/illegal/proposal status not Draft/with 1 cosigners/status: VotingReady/stake,120950501,317982,4287 +Agora/Proposal/validator/cosignature/illegal/proposal status not Draft/with 1 cosigners/status: Locked/stake,120950501,317982,4287 +Agora/Proposal/validator/cosignature/illegal/proposal status not Draft/with 1 cosigners/status: Finished/stake,120950501,317982,4287 +Agora/Proposal/validator/cosignature/illegal/proposal status not Draft/with 5 cosigners/status: VotingReady/stake,552610861,1480482,6821 +Agora/Proposal/validator/cosignature/illegal/proposal status not Draft/with 5 cosigners/status: Locked/stake,552610861,1480482,6821 +Agora/Proposal/validator/cosignature/illegal/proposal status not Draft/with 5 cosigners/status: Finished/stake,552610861,1480482,6821 +Agora/Proposal/validator/cosignature/illegal/proposal status not Draft/with 10 cosigners/status: VotingReady/stake,1187840396,3209013,9989 +Agora/Proposal/validator/cosignature/illegal/proposal status not Draft/with 10 cosigners/status: Locked/stake,1187840396,3209013,9989 +Agora/Proposal/validator/cosignature/illegal/proposal status not Draft/with 10 cosigners/status: Finished/stake,1187840396,3209013,9989 +Agora/Proposal/validator/voting/legal/ordinary/proposal,292107030,818192,6976 +Agora/Proposal/validator/voting/legal/ordinary/stake,138776145,368604,4313 +Agora/Proposal/validator/voting/legal/delegate/proposal,293223020,821804,7039 +Agora/Proposal/validator/voting/legal/delegate/stake,135207796,352770,4407 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to next state/from Draft to VotingReady/proposal,278165358,776398,7489 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to next state/from Draft to VotingReady/stake,132049602,347450,4623 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to next state/from VotingReady to Locked/proposal,323181211,887380,7498 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to next state/from VotingReady to Locked/stake,132772138,349714,4630 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to next state/from Locked to Finished/proposal,373749316,1029579,8650 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to next state/from Locked to Finished/stake,190734433,489947,5782 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to next state/from Locked to Finished/governor,495323391,1250397,8245 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to next state/from Locked to Finished/authority,15783303,48140,3342 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to failed state/from Draft to Finished/proposal,275372622,770485,7491 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to failed state/from Draft to Finished/stake,132772138,349714,4625 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to failed state/from VotingReady to Finished/proposal,311464859,854847,7492 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to failed state/from VotingReady to Finished/stake,132772138,349714,4626 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to failed state/from Locked to Finished/proposal,313726815,859655,7492 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/legal/to failed state/from Locked to Finished/stake,132772138,349714,4626 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/stake,132049602,347450,4623 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/stake,132772138,349714,4630 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/stake,190734433,489947,5782 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/authority,15783303,48140,3342 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/insufficient cosigns/stake,132049602,347450,4623 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/insufficient votes/stake,132772138,349714,4626 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/ambiguous winning effect/stake,132772138,349714,4634 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/to next state too late/from Draft/stake,132049602,347450,4625 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/to next state too late/from VotingReady/stake,132772138,349714,4630 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/to next state too late/from Locked/stake,190734433,489947,5782 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/to next state too late/from Locked/governor,495323391,1250397,8245 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/to next state too late/from Locked/authority,15783303,48140,3342 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/altered output stake datum/from Locked/governor,495323391,1250397,8246 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/altered output stake datum/from Locked/authority,15783303,48140,3343 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/forget to mint GATs/proposal,349498270,956970,7939 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/forget to mint GATs/stake,177634274,464336,5071 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/mint GATs for wrong validators/proposal,381832998,1053782,8877 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/mint GATs for wrong validators/stake,194282542,497174,6009 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/mint GATs for wrong validators/authority,17607300,53202,3569 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/mint GATs with bad token name/proposal,373749316,1029579,8472 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/mint GATs with bad token name/stake,190734433,489947,5604 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/wrong GAT datum/proposal,373749316,1029579,8644 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/wrong GAT datum/stake,190734433,489947,5776 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/wrong GAT datum/authority,15783303,48140,3336 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/invalid governor output datum/proposal,373749316,1029579,8650 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/invalid governor output datum/stake,190734433,489947,5782 +Agora/Proposal/validator/advancing/with 1 cosigners and 1 effects/illegal/invalid governor output datum/authority,15783303,48140,3342 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to next state/from Draft to VotingReady/proposal,318054305,881782,8078 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to next state/from Draft to VotingReady/stake,132049602,347450,5016 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to next state/from VotingReady to Locked/proposal,366765044,1002752,8087 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to next state/from VotingReady to Locked/stake,132772138,349714,5023 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to next state/from Locked to Finished/proposal,413638263,1134963,9240 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to next state/from Locked to Finished/stake,190734433,489947,6176 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to next state/from Locked to Finished/governor,513404095,1300606,8639 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to next state/from Locked to Finished/authority,15783303,48140,3736 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to failed state/from Draft to Finished/proposal,315261569,875869,8080 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to failed state/from Draft to Finished/stake,132772138,349714,5018 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to failed state/from VotingReady to Finished/proposal,351353806,960231,8081 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to failed state/from VotingReady to Finished/stake,132772138,349714,5019 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to failed state/from Locked to Finished/proposal,353615762,965039,8081 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/legal/to failed state/from Locked to Finished/stake,132772138,349714,5019 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/stake,132049602,347450,5016 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/stake,132772138,349714,5023 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/stake,190734433,489947,6176 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/authority,15783303,48140,3736 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/insufficient cosigns/stake,132049602,347450,5016 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/insufficient votes/stake,132772138,349714,5019 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/ambiguous winning effect/stake,132772138,349714,5031 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/to next state too late/from Draft/stake,132049602,347450,5018 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/to next state too late/from VotingReady/stake,132772138,349714,5023 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/to next state too late/from Locked/stake,190734433,489947,6176 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/to next state too late/from Locked/governor,513404095,1300606,8639 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/to next state too late/from Locked/authority,15783303,48140,3736 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/altered output stake datum/from Locked/governor,513404095,1300606,8640 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/altered output stake datum/from Locked/authority,15783303,48140,3737 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/forget to mint GATs/proposal,389387217,1062354,8528 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/forget to mint GATs/stake,177634274,464336,5464 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/mint GATs for wrong validators/proposal,421721945,1159166,9467 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/mint GATs for wrong validators/stake,194282542,497174,6403 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/mint GATs for wrong validators/authority,17607300,53202,3963 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/mint GATs with bad token name/proposal,413638263,1134963,9061 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/mint GATs with bad token name/stake,190734433,489947,5997 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/wrong GAT datum/proposal,413638263,1134963,9234 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/wrong GAT datum/stake,190734433,489947,6170 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/wrong GAT datum/authority,15783303,48140,3730 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/invalid governor output datum/proposal,413638263,1134963,9240 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/invalid governor output datum/stake,190734433,489947,6176 +Agora/Proposal/validator/advancing/with 1 cosigners and 2 effects/illegal/invalid governor output datum/authority,15783303,48140,3736 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to next state/from Draft to VotingReady/proposal,437721146,1197934,9850 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to next state/from Draft to VotingReady/stake,132049602,347450,6197 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to next state/from VotingReady to Locked/proposal,497516543,1348868,9859 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to next state/from VotingReady to Locked/stake,132772138,349714,6204 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to next state/from Locked to Finished/proposal,533305104,1451115,11011 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to next state/from Locked to Finished/stake,190734433,489947,7356 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to next state/from Locked to Finished/governor,567646207,1451233,9819 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to next state/from Locked to Finished/authority,15783303,48140,4916 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to failed state/from Draft to Finished/proposal,434928410,1192021,9852 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to failed state/from Draft to Finished/stake,132772138,349714,6199 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to failed state/from VotingReady to Finished/proposal,471020647,1276383,9853 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to failed state/from VotingReady to Finished/stake,132772138,349714,6200 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to failed state/from Locked to Finished/proposal,473282603,1281191,9853 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/legal/to failed state/from Locked to Finished/stake,132772138,349714,6200 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/stake,132049602,347450,6197 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/stake,132772138,349714,6204 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/stake,190734433,489947,7356 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/authority,15783303,48140,4916 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/insufficient cosigns/stake,132049602,347450,6197 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/insufficient votes/stake,132772138,349714,6200 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/ambiguous winning effect/stake,132772138,349714,6224 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/to next state too late/from Draft/stake,132049602,347450,6199 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/to next state too late/from VotingReady/stake,132772138,349714,6204 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/to next state too late/from Locked/stake,190734433,489947,7356 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/to next state too late/from Locked/governor,567646207,1451233,9819 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/to next state too late/from Locked/authority,15783303,48140,4916 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/altered output stake datum/from Locked/governor,567646207,1451233,9820 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/altered output stake datum/from Locked/authority,15783303,48140,4917 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/forget to mint GATs/proposal,509054058,1378506,10300 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/forget to mint GATs/stake,177634274,464336,6645 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/mint GATs for wrong validators/proposal,541388786,1475318,11238 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/mint GATs for wrong validators/stake,194282542,497174,7583 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/mint GATs for wrong validators/authority,17607300,53202,5143 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/mint GATs with bad token name/proposal,533305104,1451115,10833 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/mint GATs with bad token name/stake,190734433,489947,7178 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/wrong GAT datum/proposal,533305104,1451115,11005 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/wrong GAT datum/stake,190734433,489947,7350 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/wrong GAT datum/authority,15783303,48140,4910 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/invalid governor output datum/proposal,533305104,1451115,11011 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/invalid governor output datum/stake,190734433,489947,7356 +Agora/Proposal/validator/advancing/with 1 cosigners and 5 effects/illegal/invalid governor output datum/authority,15783303,48140,4916 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to next state/from Draft to VotingReady/proposal,648239449,1844807,10259 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to next state/from Draft to VotingReady/stake,551078264,1473072,7272 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to next state/from VotingReady to Locked/proposal,345550559,949444,7855 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to next state/from VotingReady to Locked/stake,132772138,349714,4866 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to next state/from Locked to Finished/proposal,396118664,1091643,9007 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to next state/from Locked to Finished/stake,190734433,489947,6018 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to next state/from Locked to Finished/governor,502511339,1271085,8482 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to next state/from Locked to Finished/authority,15783303,48140,3579 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to failed state/from Draft to Finished/proposal,297741970,832549,7848 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to failed state/from Draft to Finished/stake,132772138,349714,4861 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to failed state/from VotingReady to Finished/proposal,333834207,916911,7849 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to failed state/from VotingReady to Finished/stake,132772138,349714,4862 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to failed state/from Locked to Finished/proposal,336096163,921719,7849 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/legal/to failed state/from Locked to Finished/stake,132772138,349714,4862 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/stake,551078264,1473072,7272 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/stake,132772138,349714,4866 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/stake,190734433,489947,6018 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/authority,15783303,48140,3579 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/insufficient cosigns/stake,536963978,1432062,7272 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/insufficient votes/stake,132772138,349714,4862 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/ambiguous winning effect/stake,132772138,349714,4870 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/to next state too late/from Draft/stake,551078264,1473072,7274 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/to next state too late/from VotingReady/stake,132772138,349714,4866 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/to next state too late/from Locked/stake,190734433,489947,6018 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/to next state too late/from Locked/governor,502511339,1271085,8482 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/to next state too late/from Locked/authority,15783303,48140,3579 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/altered output stake datum/from Locked/governor,502511339,1271085,8483 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/altered output stake datum/from Locked/authority,15783303,48140,3580 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/forget to mint GATs/proposal,371867618,1019034,8295 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/forget to mint GATs/stake,177634274,464336,5306 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/mint GATs for wrong validators/proposal,404202346,1115846,9234 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/mint GATs for wrong validators/stake,194282542,497174,6245 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/mint GATs for wrong validators/authority,17607300,53202,3806 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/mint GATs with bad token name/proposal,396118664,1091643,8829 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/mint GATs with bad token name/stake,190734433,489947,5840 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/wrong GAT datum/proposal,396118664,1091643,9001 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/wrong GAT datum/stake,190734433,489947,6012 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/wrong GAT datum/authority,15783303,48140,3573 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/invalid governor output datum/proposal,396118664,1091643,9007 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/invalid governor output datum/stake,190734433,489947,6018 +Agora/Proposal/validator/advancing/with 5 cosigners and 1 effects/illegal/invalid governor output datum/authority,15783303,48140,3579 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to next state/from Draft to VotingReady/proposal,688128396,1950191,10850 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to next state/from Draft to VotingReady/stake,551078264,1473072,7666 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to next state/from VotingReady to Locked/proposal,389134392,1064816,8445 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to next state/from VotingReady to Locked/stake,132772138,349714,5259 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to next state/from Locked to Finished/proposal,436007611,1197027,9598 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to next state/from Locked to Finished/stake,190734433,489947,6412 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to next state/from Locked to Finished/governor,520592043,1321294,8876 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to next state/from Locked to Finished/authority,15783303,48140,3973 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to failed state/from Draft to Finished/proposal,337630917,937933,8438 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to failed state/from Draft to Finished/stake,132772138,349714,5254 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to failed state/from VotingReady to Finished/proposal,373723154,1022295,8439 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to failed state/from VotingReady to Finished/stake,132772138,349714,5255 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to failed state/from Locked to Finished/proposal,375985110,1027103,8439 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/legal/to failed state/from Locked to Finished/stake,132772138,349714,5255 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/stake,551078264,1473072,7666 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/stake,132772138,349714,5259 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/stake,190734433,489947,6412 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/authority,15783303,48140,3973 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/insufficient cosigns/stake,536963978,1432062,7666 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/insufficient votes/stake,132772138,349714,5255 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/ambiguous winning effect/stake,132772138,349714,5267 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/to next state too late/from Draft/stake,551078264,1473072,7668 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/to next state too late/from VotingReady/stake,132772138,349714,5259 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/to next state too late/from Locked/stake,190734433,489947,6412 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/to next state too late/from Locked/governor,520592043,1321294,8876 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/to next state too late/from Locked/authority,15783303,48140,3973 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/altered output stake datum/from Locked/governor,520592043,1321294,8877 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/altered output stake datum/from Locked/authority,15783303,48140,3974 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/forget to mint GATs/proposal,411756565,1124418,8886 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/forget to mint GATs/stake,177634274,464336,5700 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/mint GATs for wrong validators/proposal,444091293,1221230,9825 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/mint GATs for wrong validators/stake,194282542,497174,6639 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/mint GATs for wrong validators/authority,17607300,53202,4200 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/mint GATs with bad token name/proposal,436007611,1197027,9419 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/mint GATs with bad token name/stake,190734433,489947,6233 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/wrong GAT datum/proposal,436007611,1197027,9592 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/wrong GAT datum/stake,190734433,489947,6406 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/wrong GAT datum/authority,15783303,48140,3967 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/invalid governor output datum/proposal,436007611,1197027,9598 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/invalid governor output datum/stake,190734433,489947,6412 +Agora/Proposal/validator/advancing/with 5 cosigners and 2 effects/illegal/invalid governor output datum/authority,15783303,48140,3973 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to next state/from Draft to VotingReady/proposal,807795237,2266343,12620 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to next state/from Draft to VotingReady/stake,551078264,1473072,8846 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to next state/from VotingReady to Locked/proposal,519885891,1410932,10216 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to next state/from VotingReady to Locked/stake,132772138,349714,6440 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to next state/from Locked to Finished/proposal,555674452,1513179,11368 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to next state/from Locked to Finished/stake,190734433,489947,7592 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to next state/from Locked to Finished/governor,574834155,1471921,10056 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to next state/from Locked to Finished/authority,15783303,48140,5153 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to failed state/from Draft to Finished/proposal,457297758,1254085,10209 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to failed state/from Draft to Finished/stake,132772138,349714,6435 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to failed state/from VotingReady to Finished/proposal,493389995,1338447,10210 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to failed state/from VotingReady to Finished/stake,132772138,349714,6436 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to failed state/from Locked to Finished/proposal,495651951,1343255,10210 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/legal/to failed state/from Locked to Finished/stake,132772138,349714,6436 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/stake,551078264,1473072,8846 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/stake,132772138,349714,6440 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/stake,190734433,489947,7592 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/authority,15783303,48140,5153 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/insufficient cosigns/stake,536963978,1432062,8846 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/insufficient votes/stake,132772138,349714,6436 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/ambiguous winning effect/stake,132772138,349714,6460 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/to next state too late/from Draft/stake,551078264,1473072,8848 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/to next state too late/from VotingReady/stake,132772138,349714,6440 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/to next state too late/from Locked/stake,190734433,489947,7592 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/to next state too late/from Locked/governor,574834155,1471921,10056 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/to next state too late/from Locked/authority,15783303,48140,5153 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/altered output stake datum/from Locked/governor,574834155,1471921,10057 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/altered output stake datum/from Locked/authority,15783303,48140,5154 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/forget to mint GATs/proposal,531423406,1440570,10657 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/forget to mint GATs/stake,177634274,464336,6881 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/mint GATs for wrong validators/proposal,563758134,1537382,11595 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/mint GATs for wrong validators/stake,194282542,497174,7819 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/mint GATs for wrong validators/authority,17607300,53202,5380 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/mint GATs with bad token name/proposal,555674452,1513179,11190 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/mint GATs with bad token name/stake,190734433,489947,7414 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/wrong GAT datum/proposal,555674452,1513179,11362 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/wrong GAT datum/stake,190734433,489947,7586 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/wrong GAT datum/authority,15783303,48140,5147 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/invalid governor output datum/proposal,555674452,1513179,11368 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/invalid governor output datum/stake,190734433,489947,7592 +Agora/Proposal/validator/advancing/with 5 cosigners and 5 effects/illegal/invalid governor output datum/authority,15783303,48140,5153 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to next state/from Draft to VotingReady/proposal,1198176494,3435790,13728 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to next state/from Draft to VotingReady/stake,1187049093,3203669,10590 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to next state/from VotingReady to Locked/proposal,373512244,1027024,8307 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to next state/from VotingReady to Locked/stake,132772138,349714,5167 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to next state/from Locked to Finished/proposal,424080349,1169223,9459 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to next state/from Locked to Finished/stake,190734433,489947,6319 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to next state/from Locked to Finished/governor,511496274,1296945,8783 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to next state/from Locked to Finished/authority,15783303,48140,3880 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to failed state/from Draft to Finished/proposal,325703655,910129,8300 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to failed state/from Draft to Finished/stake,132772138,349714,5162 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to failed state/from VotingReady to Finished/proposal,361795892,994491,8301 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to failed state/from VotingReady to Finished/stake,132772138,349714,5163 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to failed state/from Locked to Finished/proposal,364057848,999299,8301 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/legal/to failed state/from Locked to Finished/stake,132772138,349714,5163 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/stake,1187049093,3203669,10590 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/stake,132772138,349714,5167 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/stake,190734433,489947,6319 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/advance finished proposals/(negative test)/authority,15783303,48140,3880 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/insufficient cosigns/stake,1201163379,3244679,10590 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/insufficient votes/stake,132772138,349714,5163 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/ambiguous winning effect/stake,132772138,349714,5171 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/to next state too late/from Draft/stake,1187049093,3203669,10592 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/to next state too late/from VotingReady/stake,132772138,349714,5167 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/to next state too late/from Locked/stake,190734433,489947,6319 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/to next state too late/from Locked/governor,511496274,1296945,8783 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/to next state too late/from Locked/authority,15783303,48140,3880 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/altered output stake datum/from Locked/governor,511496274,1296945,8784 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/altered output stake datum/from Locked/authority,15783303,48140,3881 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/forget to mint GATs/proposal,399829303,1096614,8748 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/forget to mint GATs/stake,177634274,464336,5608 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/mint GATs for wrong validators/proposal,432164031,1193426,9686 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/mint GATs for wrong validators/stake,194282542,497174,6546 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/mint GATs for wrong validators/authority,17607300,53202,4107 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/mint GATs with bad token name/proposal,424080349,1169223,9281 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/mint GATs with bad token name/stake,190734433,489947,6141 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/wrong GAT datum/proposal,424080349,1169223,9453 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/wrong GAT datum/stake,190734433,489947,6313 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/wrong GAT datum/authority,15783303,48140,3874 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/invalid governor output datum/proposal,424080349,1169223,9459 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/invalid governor output datum/stake,190734433,489947,6319 +Agora/Proposal/validator/advancing/with 10 cosigners and 1 effects/illegal/invalid governor output datum/authority,15783303,48140,3880 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to next state/from Draft to VotingReady/proposal,1238065441,3541174,14318 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to next state/from Draft to VotingReady/stake,1187049093,3203669,10984 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to next state/from VotingReady to Locked/proposal,417096077,1142396,8896 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to next state/from VotingReady to Locked/stake,132772138,349714,5560 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to next state/from Locked to Finished/proposal,463969296,1274607,10049 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to next state/from Locked to Finished/stake,190734433,489947,6713 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to next state/from Locked to Finished/governor,529576978,1347154,9177 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to next state/from Locked to Finished/authority,15783303,48140,4274 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to failed state/from Draft to Finished/proposal,365592602,1015513,8889 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to failed state/from Draft to Finished/stake,132772138,349714,5555 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to failed state/from VotingReady to Finished/proposal,401684839,1099875,8890 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to failed state/from VotingReady to Finished/stake,132772138,349714,5556 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to failed state/from Locked to Finished/proposal,403946795,1104683,8890 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/legal/to failed state/from Locked to Finished/stake,132772138,349714,5556 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/stake,1187049093,3203669,10984 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/stake,132772138,349714,5560 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/stake,190734433,489947,6713 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/advance finished proposals/(negative test)/authority,15783303,48140,4274 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/insufficient cosigns/stake,1201163379,3244679,10984 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/insufficient votes/stake,132772138,349714,5556 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/ambiguous winning effect/stake,132772138,349714,5568 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/to next state too late/from Draft/stake,1187049093,3203669,10986 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/to next state too late/from VotingReady/stake,132772138,349714,5560 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/to next state too late/from Locked/stake,190734433,489947,6713 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/to next state too late/from Locked/governor,529576978,1347154,9177 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/to next state too late/from Locked/authority,15783303,48140,4274 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/altered output stake datum/from Locked/governor,529576978,1347154,9178 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/altered output stake datum/from Locked/authority,15783303,48140,4275 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/forget to mint GATs/proposal,439718250,1201998,9337 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/forget to mint GATs/stake,177634274,464336,6001 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/mint GATs for wrong validators/proposal,472052978,1298810,10276 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/mint GATs for wrong validators/stake,194282542,497174,6940 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/mint GATs for wrong validators/authority,17607300,53202,4501 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/mint GATs with bad token name/proposal,463969296,1274607,9870 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/mint GATs with bad token name/stake,190734433,489947,6534 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/wrong GAT datum/proposal,463969296,1274607,10043 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/wrong GAT datum/stake,190734433,489947,6707 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/wrong GAT datum/authority,15783303,48140,4268 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/invalid governor output datum/proposal,463969296,1274607,10049 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/invalid governor output datum/stake,190734433,489947,6713 +Agora/Proposal/validator/advancing/with 10 cosigners and 2 effects/illegal/invalid governor output datum/authority,15783303,48140,4274 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to next state/from Draft to VotingReady/proposal,1357732282,3857326,16089 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to next state/from Draft to VotingReady/stake,1187049093,3203669,12164 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to next state/from VotingReady to Locked/proposal,547847576,1488512,10668 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to next state/from VotingReady to Locked/stake,132772138,349714,6741 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to next state/from Locked to Finished/proposal,583636137,1590759,11821 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to next state/from Locked to Finished/stake,190734433,489947,7894 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to next state/from Locked to Finished/governor,583819090,1497781,10358 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to next state/from Locked to Finished/authority,15783303,48140,5455 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to failed state/from Draft to Finished/proposal,485259443,1331665,10661 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to failed state/from Draft to Finished/stake,132772138,349714,6736 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to failed state/from VotingReady to Finished/proposal,521351680,1416027,10662 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to failed state/from VotingReady to Finished/stake,132772138,349714,6737 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to failed state/from Locked to Finished/proposal,523613636,1420835,10662 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/legal/to failed state/from Locked to Finished/stake,132772138,349714,6737 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/stake,1187049093,3203669,12164 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/stake,132772138,349714,6741 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/stake,190734433,489947,7894 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/advance finished proposals/(negative test)/authority,15783303,48140,5455 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/insufficient cosigns/stake,1201163379,3244679,12164 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/insufficient votes/stake,132772138,349714,6737 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/ambiguous winning effect/stake,132772138,349714,6761 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/to next state too late/from Draft/stake,1187049093,3203669,12166 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/to next state too late/from VotingReady/stake,132772138,349714,6741 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/to next state too late/from Locked/stake,190734433,489947,7894 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/to next state too late/from Locked/governor,583819090,1497781,10358 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/to next state too late/from Locked/authority,15783303,48140,5455 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/altered output stake datum/from Locked/governor,583819090,1497781,10359 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/altered output stake datum/from Locked/authority,15783303,48140,5456 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/forget to mint GATs/proposal,559385091,1518150,11109 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/forget to mint GATs/stake,177634274,464336,7182 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/mint GATs for wrong validators/proposal,591719819,1614962,12047 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/mint GATs for wrong validators/stake,194282542,497174,8120 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/mint GATs for wrong validators/authority,17607300,53202,5681 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/mint GATs with bad token name/proposal,583636137,1590759,11642 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/mint GATs with bad token name/stake,190734433,489947,7715 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/wrong GAT datum/proposal,583636137,1590759,11815 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/wrong GAT datum/stake,190734433,489947,7888 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/wrong GAT datum/authority,15783303,48140,5448 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/invalid governor output datum/proposal,583636137,1590759,11821 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/invalid governor output datum/stake,190734433,489947,7894 +Agora/Proposal/validator/advancing/with 10 cosigners and 5 effects/illegal/invalid governor output datum/authority,15783303,48140,5455 +Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter: retract votes while voting/stake,126576208,334351,4293 +Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter: retract votes while voting/proposal,48129948,145642,6957 +Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter/creator: retract votes while voting/stake,129807454,343405,4309 +Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter/creator: retract votes while voting/proposal,48129948,145642,6968 +Agora/Proposal/validator/unlocking/legal/with 1 proposals/creator: remove creator locks when finished/stake,126576208,334351,4291 +Agora/Proposal/validator/unlocking/legal/with 1 proposals/creator: remove creator locks when finished/proposal,48129948,145642,6954 +Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter/creator: remove all locks when finished/stake,126576208,334351,4307 +Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter/creator: remove all locks when finished/proposal,48129948,145642,6966 +Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter: unlock after voting/Locked/stake,126576208,334351,4297 +Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter: unlock after voting/Locked/proposal,48129948,145642,6961 +Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter: unlock after voting/Finished/stake,126576208,334351,4297 +Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter: unlock after voting/Finished/proposal,48129948,145642,6961 +Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter/creator: remove vote locks when locked/stake,129807454,343405,4313 +Agora/Proposal/validator/unlocking/legal/with 1 proposals/voter/creator: remove vote locks when locked/proposal,48129948,145642,6972 +Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter: retract votes while voting/stake,282885452,734987,6386 +Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter: retract votes while voting/proposal,48129948,145642,9026 +Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter/creator: retract votes while voting/stake,299041682,780257,6462 +Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter/creator: retract votes while voting/proposal,48129948,145642,9077 +Agora/Proposal/validator/unlocking/legal/with 5 proposals/creator: remove creator locks when finished/stake,282885452,734987,6375 +Agora/Proposal/validator/unlocking/legal/with 5 proposals/creator: remove creator locks when finished/proposal,48129948,145642,9018 +Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter/creator: remove all locks when finished/stake,282885452,734987,6456 +Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter/creator: remove all locks when finished/proposal,48129948,145642,9071 +Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter: unlock after voting/Locked/stake,282885452,734987,6406 +Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter: unlock after voting/Locked/proposal,48129948,145642,9046 +Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter: unlock after voting/Finished/stake,282885452,734987,6406 +Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter: unlock after voting/Finished/proposal,48129948,145642,9046 +Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter/creator: remove vote locks when locked/stake,299041682,780257,6482 +Agora/Proposal/validator/unlocking/legal/with 5 proposals/voter/creator: remove vote locks when locked/proposal,48129948,145642,9097 +Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter: retract votes while voting/stake,478272007,1235782,9001 +Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter: retract votes while voting/proposal,48129948,145642,11611 +Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter/creator: retract votes while voting/stake,510584467,1326322,9152 +Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter/creator: retract votes while voting/proposal,48129948,145642,11712 +Agora/Proposal/validator/unlocking/legal/with 10 proposals/creator: remove creator locks when finished/stake,478272007,1235782,8981 +Agora/Proposal/validator/unlocking/legal/with 10 proposals/creator: remove creator locks when finished/proposal,48129948,145642,11599 +Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter/creator: remove all locks when finished/stake,478272007,1235782,9141 +Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter/creator: remove all locks when finished/proposal,48129948,145642,11701 +Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter: unlock after voting/Locked/stake,478272007,1235782,9041 +Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter: unlock after voting/Locked/proposal,48129948,145642,11651 +Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter: unlock after voting/Finished/stake,478272007,1235782,9041 +Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter: unlock after voting/Finished/proposal,48129948,145642,11651 +Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter/creator: remove vote locks when locked/stake,510584467,1326322,9192 +Agora/Proposal/validator/unlocking/legal/with 10 proposals/voter/creator: remove vote locks when locked/proposal,48129948,145642,11752 +Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter: retract votes while voting/stake,1728745959,4440870,25831 +Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter: retract votes while voting/proposal,48129948,145642,28230 +Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter/creator: retract votes while voting/stake,1864458291,4821138,26518 +Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter/creator: retract votes while voting/proposal,48129948,145642,28688 +Agora/Proposal/validator/unlocking/legal/with 42 proposals/creator: remove creator locks when finished/stake,1728745959,4440870,25746 +Agora/Proposal/validator/unlocking/legal/with 42 proposals/creator: remove creator locks when finished/proposal,48129948,145642,28185 +Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter/creator: remove all locks when finished/stake,1728745959,4440870,26457 +Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter/creator: remove all locks when finished/proposal,48129948,145642,28627 +Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter: unlock after voting/Locked/stake,1728745959,4440870,25999 +Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter: unlock after voting/Locked/proposal,48129948,145642,28398 +Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter: unlock after voting/Finished/stake,1728745959,4440870,25999 +Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter: unlock after voting/Finished/proposal,48129948,145642,28398 +Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter/creator: remove vote locks when locked/stake,1864458291,4821138,26687 +Agora/Proposal/validator/unlocking/legal/with 42 proposals/voter/creator: remove vote locks when locked/proposal,48129948,145642,28857 +"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Voter , status: Draft/stake",126576208,334351,4293 +"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Voter , status: Locked/stake",126576208,334351,4293 +"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Voter , status: Finished/stake",126576208,334351,4293 +"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Creator , status: Draft/stake",122205622,322501,4295 +"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Creator , status: Locked/stake",122205622,322501,4295 +"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Creator , status: Finished/stake",122205622,322501,4295 +"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Both , status: Draft/stake",129807454,343405,4309 +"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Both , status: Locked/stake",129807454,343405,4309 +"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Both , status: Finished/stake",129807454,343405,4309 +"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Irrelevant , status: Draft/stake",118974376,313447,4275 +"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Irrelevant , status: Locked/stake",118974376,313447,4275 +"Agora/Proposal/validator/unlocking/illegal/with 1 proposals/retract votes while not voting/role: Irrelevant , status: Finished/stake",118974376,313447,4275 +Agora/Proposal/validator/unlocking/illegal/with 1 proposals/unlock an irrelevant stake/status: Draft retract votes: True/stake,118974376,313447,4275 +Agora/Proposal/validator/unlocking/illegal/with 1 proposals/unlock an irrelevant stake/status: Draft retract votes: False/stake,118974376,313447,4275 +Agora/Proposal/validator/unlocking/illegal/with 1 proposals/unlock an irrelevant stake/status: VotingReady retract votes: True/stake,118974376,313447,4275 +Agora/Proposal/validator/unlocking/illegal/with 1 proposals/unlock an irrelevant stake/status: VotingReady retract votes: False/stake,118974376,313447,4275 +Agora/Proposal/validator/unlocking/illegal/with 1 proposals/unlock an irrelevant stake/status: Locked retract votes: True/stake,118974376,313447,4275 +Agora/Proposal/validator/unlocking/illegal/with 1 proposals/unlock an irrelevant stake/status: Locked retract votes: False/stake,118974376,313447,4275 +Agora/Proposal/validator/unlocking/illegal/with 1 proposals/unlock an irrelevant stake/status: Finished retract votes: True/stake,118974376,313447,4275 +Agora/Proposal/validator/unlocking/illegal/with 1 proposals/unlock an irrelevant stake/status: Finished retract votes: False/stake,118974376,313447,4275 +Agora/Proposal/validator/unlocking/illegal/with 1 proposals/remove creator too early/status: Draft/stake,126576208,334351,4291 +Agora/Proposal/validator/unlocking/illegal/with 1 proposals/remove creator too early/status: VotingReady/stake,126576208,334351,4291 +Agora/Proposal/validator/unlocking/illegal/with 1 proposals/remove creator too early/status: Locked/stake,126576208,334351,4291 +Agora/Proposal/validator/unlocking/illegal/with 1 proposals/creator: retract votes/stake,126576208,334351,4289 +"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Voter , status: Draft/stake",282885452,734987,6386 +"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Voter , status: Locked/stake",282885452,734987,6386 +"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Voter , status: Finished/stake",282885452,734987,6386 +"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Creator , status: Draft/stake",276236186,717545,6392 +"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Creator , status: Locked/stake",276236186,717545,6392 +"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Creator , status: Finished/stake",276236186,717545,6392 +"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Both , status: Draft/stake",299041682,780257,6462 +"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Both , status: Locked/stake",299041682,780257,6462 +"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Both , status: Finished/stake",299041682,780257,6462 +"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Irrelevant , status: Draft/stake",260079956,672275,6303 +"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Irrelevant , status: Locked/stake",260079956,672275,6303 +"Agora/Proposal/validator/unlocking/illegal/with 5 proposals/retract votes while not voting/role: Irrelevant , status: Finished/stake",260079956,672275,6303 +Agora/Proposal/validator/unlocking/illegal/with 5 proposals/unlock an irrelevant stake/status: Draft retract votes: True/stake,260079956,672275,6303 +Agora/Proposal/validator/unlocking/illegal/with 5 proposals/unlock an irrelevant stake/status: Draft retract votes: False/stake,260079956,672275,6303 +Agora/Proposal/validator/unlocking/illegal/with 5 proposals/unlock an irrelevant stake/status: VotingReady retract votes: True/stake,260079956,672275,6303 +Agora/Proposal/validator/unlocking/illegal/with 5 proposals/unlock an irrelevant stake/status: VotingReady retract votes: False/stake,260079956,672275,6303 +Agora/Proposal/validator/unlocking/illegal/with 5 proposals/unlock an irrelevant stake/status: Locked retract votes: True/stake,260079956,672275,6303 +Agora/Proposal/validator/unlocking/illegal/with 5 proposals/unlock an irrelevant stake/status: Locked retract votes: False/stake,260079956,672275,6303 +Agora/Proposal/validator/unlocking/illegal/with 5 proposals/unlock an irrelevant stake/status: Finished retract votes: True/stake,260079956,672275,6303 +Agora/Proposal/validator/unlocking/illegal/with 5 proposals/unlock an irrelevant stake/status: Finished retract votes: False/stake,260079956,672275,6303 +Agora/Proposal/validator/unlocking/illegal/with 5 proposals/remove creator too early/status: Draft/stake,282885452,734987,6375 +Agora/Proposal/validator/unlocking/illegal/with 5 proposals/remove creator too early/status: VotingReady/stake,282885452,734987,6375 +Agora/Proposal/validator/unlocking/illegal/with 5 proposals/remove creator too early/status: Locked/stake,282885452,734987,6375 +Agora/Proposal/validator/unlocking/illegal/with 5 proposals/creator: retract votes/stake,282885452,734987,6365 +"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Voter , status: Draft/stake",478272007,1235782,9001 +"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Voter , status: Locked/stake",478272007,1235782,9001 +"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Voter , status: Finished/stake",478272007,1235782,9001 +"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Creator , status: Draft/stake",468774391,1211350,9012 +"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Creator , status: Locked/stake",468774391,1211350,9012 +"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Creator , status: Finished/stake",468774391,1211350,9012 +"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Both , status: Draft/stake",510584467,1326322,9152 +"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Both , status: Locked/stake",510584467,1326322,9152 +"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Both , status: Finished/stake",510584467,1326322,9152 +"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Irrelevant , status: Draft/stake",436461931,1120810,8838 +"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Irrelevant , status: Locked/stake",436461931,1120810,8838 +"Agora/Proposal/validator/unlocking/illegal/with 10 proposals/retract votes while not voting/role: Irrelevant , status: Finished/stake",436461931,1120810,8838 +Agora/Proposal/validator/unlocking/illegal/with 10 proposals/unlock an irrelevant stake/status: Draft retract votes: True/stake,436461931,1120810,8838 +Agora/Proposal/validator/unlocking/illegal/with 10 proposals/unlock an irrelevant stake/status: Draft retract votes: False/stake,436461931,1120810,8838 +Agora/Proposal/validator/unlocking/illegal/with 10 proposals/unlock an irrelevant stake/status: VotingReady retract votes: True/stake,436461931,1120810,8838 +Agora/Proposal/validator/unlocking/illegal/with 10 proposals/unlock an irrelevant stake/status: VotingReady retract votes: False/stake,436461931,1120810,8838 +Agora/Proposal/validator/unlocking/illegal/with 10 proposals/unlock an irrelevant stake/status: Locked retract votes: True/stake,436461931,1120810,8838 +Agora/Proposal/validator/unlocking/illegal/with 10 proposals/unlock an irrelevant stake/status: Locked retract votes: False/stake,436461931,1120810,8838 +Agora/Proposal/validator/unlocking/illegal/with 10 proposals/unlock an irrelevant stake/status: Finished retract votes: True/stake,436461931,1120810,8838 +Agora/Proposal/validator/unlocking/illegal/with 10 proposals/unlock an irrelevant stake/status: Finished retract votes: False/stake,436461931,1120810,8838 +Agora/Proposal/validator/unlocking/illegal/with 10 proposals/remove creator too early/status: Draft/stake,478272007,1235782,8981 +Agora/Proposal/validator/unlocking/illegal/with 10 proposals/remove creator too early/status: VotingReady/stake,478272007,1235782,8981 +Agora/Proposal/validator/unlocking/illegal/with 10 proposals/remove creator too early/status: Locked/stake,478272007,1235782,8981 +Agora/Proposal/validator/unlocking/illegal/with 10 proposals/creator: retract votes/stake,478272007,1235782,8960 +"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Voter , status: Draft/stake",1728745959,4440870,25831 +"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Voter , status: Locked/stake",1728745959,4440870,25831 +"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Voter , status: Finished/stake",1728745959,4440870,25831 +"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Creator , status: Draft/stake",1701018903,4371702,25892 +"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Creator , status: Locked/stake",1701018903,4371702,25892 +"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Creator , status: Finished/stake",1701018903,4371702,25892 +"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Both , status: Draft/stake",1864458291,4821138,26518 +"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Both , status: Locked/stake",1864458291,4821138,26518 +"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Both , status: Finished/stake",1864458291,4821138,26518 +"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Irrelevant , status: Draft/stake",1565306571,3991434,25118 +"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Irrelevant , status: Locked/stake",1565306571,3991434,25118 +"Agora/Proposal/validator/unlocking/illegal/with 42 proposals/retract votes while not voting/role: Irrelevant , status: Finished/stake",1565306571,3991434,25118 +Agora/Proposal/validator/unlocking/illegal/with 42 proposals/unlock an irrelevant stake/status: Draft retract votes: True/stake,1565306571,3991434,25118 +Agora/Proposal/validator/unlocking/illegal/with 42 proposals/unlock an irrelevant stake/status: Draft retract votes: False/stake,1565306571,3991434,25118 +Agora/Proposal/validator/unlocking/illegal/with 42 proposals/unlock an irrelevant stake/status: VotingReady retract votes: True/stake,1565306571,3991434,25118 +Agora/Proposal/validator/unlocking/illegal/with 42 proposals/unlock an irrelevant stake/status: VotingReady retract votes: False/stake,1565306571,3991434,25118 +Agora/Proposal/validator/unlocking/illegal/with 42 proposals/unlock an irrelevant stake/status: Locked retract votes: True/stake,1565306571,3991434,25118 +Agora/Proposal/validator/unlocking/illegal/with 42 proposals/unlock an irrelevant stake/status: Locked retract votes: False/stake,1565306571,3991434,25118 +Agora/Proposal/validator/unlocking/illegal/with 42 proposals/unlock an irrelevant stake/status: Finished retract votes: True/stake,1565306571,3991434,25118 +Agora/Proposal/validator/unlocking/illegal/with 42 proposals/unlock an irrelevant stake/status: Finished retract votes: False/stake,1565306571,3991434,25118 +Agora/Proposal/validator/unlocking/illegal/with 42 proposals/remove creator too early/status: Draft/stake,1728745959,4440870,25746 +Agora/Proposal/validator/unlocking/illegal/with 42 proposals/remove creator too early/status: VotingReady/stake,1728745959,4440870,25746 +Agora/Proposal/validator/unlocking/illegal/with 42 proposals/remove creator too early/status: Locked/stake,1728745959,4440870,25746 +Agora/Proposal/validator/unlocking/illegal/with 42 proposals/creator: retract votes/stake,1728745959,4440870,25662 +Agora/AuthorityToken/singleAuthorityTokenBurned/Correct simple,19822997,52452,427 +Agora/AuthorityToken/singleAuthorityTokenBurned/Correct many inputs,32009395,84810,527 +Agora/Treasury/Validator/Positive/Allows for effect changes,30529414,78579,983 +Agora/AuthorityToken/singleAuthorityTokenBurned/Correct simple,19822997,52452,427 +Agora/AuthorityToken/singleAuthorityTokenBurned/Correct many inputs,32009395,84810,527 +Agora/Governor/policy/totally legal,67334379,187470,1867 +Agora/Governor/validator/mutate/legal,115397394,308142,6308