{-# LANGUAGE DataKinds #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE GADTs #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE RankNTypes #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE StandaloneDeriving #-}
{-# LANGUAGE TypeApplications #-}
{-# LANGUAGE UndecidableInstances #-}
{-# LANGUAGE ViewPatterns #-}
{-# OPTIONS_GHC -Wno-orphans #-}
module Test.Gen.Cardano.Api.Orphans (obtainArbitraryConstraints) where
import Cardano.Api hiding (txIns)
import Cardano.Api.Ledger qualified as L
import Cardano.Crypto.Hash.Class (hashWith)
import Cardano.Crypto.Hash.Class qualified as Crypto
import Cardano.Ledger.Address ()
import Cardano.Ledger.Alonzo.PParams qualified as Ledger
import Cardano.Ledger.Alonzo.Scripts qualified as Alonzo
import Cardano.Ledger.Babbage.PParams qualified as Ledger
import Cardano.Ledger.BaseTypes (textToDns, textToUrl)
import Cardano.Ledger.BaseTypes qualified as Ledger
import Cardano.Ledger.Coin qualified as L
import Cardano.Ledger.Conway.Governance qualified as Ledger
import Cardano.Ledger.Conway.PParams qualified as Ledger
import Cardano.Ledger.Core qualified as Ledger
import Cardano.Ledger.HKD (HKD, NoUpdate (..))
import Cardano.Ledger.Keys (VRFVerKeyHash (..))
import Cardano.Ledger.Mary.Value qualified as ConcreteValue
import Cardano.Ledger.Mary.Value qualified as Ledger
import Cardano.Ledger.Plutus.CostModels qualified as Ledger
import Cardano.Ledger.Plutus.Language qualified as L
import Cardano.Ledger.Plutus.Language qualified as Ledger
import Cardano.Ledger.Shelley.PParams (ShelleyPParams)
import Control.Monad (replicateM)
import Control.Monad.Trans.Fail.String (errorFail)
import Data.ByteString.Char8 qualified as C8
import Data.ByteString.Short qualified as SBS
import Data.Foldable qualified as F
import Data.Functor.Identity
import Data.IP (IPv4, IPv6, toIPv4w, toIPv6w)
import Data.Int (Int64)
import Data.Map.Strict qualified as Map
import Data.Ratio
import Data.Sequence.Strict qualified as SSeq
import Data.Set (Set)
import Data.Set qualified as Set
import Data.String (IsString (fromString))
import Data.Text qualified as T
import Data.Word
import GHC.Stack (HasCallStack)
import System.Random.Stateful
( StatefulGen (..)
, runStateGen_
)
import Test.QuickCheck
( Arbitrary (..)
, Gen
, NonNegative (..)
, Positive (..)
, arbitraryBoundedEnum
, choose
, chooseInt
, elements
, frequency
, genericShrink
, getNonNegative
, liftArbitrary
, listOf
, listOf1
, oneof
, scale
, shrinkBoundedEnum
, sublistOf
, vectorOf
)
import Test.QuickCheck.Gen (Gen (MkGen))
import Test.QuickCheck.Instances.Natural ()
import Generic.Random (genericArbitraryU)
maxDecimalsWord64 :: Int
maxDecimalsWord64 :: Int
maxDecimalsWord64 = Int
19
instance Arbitrary Ledger.EpochInterval where
arbitrary :: Gen EpochInterval
arbitrary = Word32 -> EpochInterval
Ledger.EpochInterval (Word32 -> EpochInterval) -> Gen Word32 -> Gen EpochInterval
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen Word32
forall a. Arbitrary a => Gen a
arbitrary
instance Arbitrary Ledger.NonNegativeInterval where
arbitrary :: Gen NonNegativeInterval
arbitrary = do
p <- (Int, Int) -> Gen Int
chooseInt (Int
0, Int
maxDecimalsWord64)
let y = Word64
10 Word64 -> Int -> Word64
forall a b. (Num a, Integral b) => a -> b -> a
^ Int
p :: Word64
x <- choose (0, 10 ^ maxDecimalsWord64)
pure $ unsafeBoundedRational $ Ledger.promoteRatio (x % y)
instance Arbitrary Ledger.UnitInterval where
arbitrary :: Gen UnitInterval
arbitrary = do
p <- (Int, Int) -> Gen Int
chooseInt (Int
0, Int
maxDecimalsWord64)
let y = Word64
10 Word64 -> Int -> Word64
forall a b. (Num a, Integral b) => a -> b -> a
^ Int
p :: Word64
x <- choose (0, y)
pure $ unsafeBoundedRational $ Ledger.promoteRatio (x % y)
instance Arbitrary Ledger.Nonce where
arbitrary :: Gen Nonce
arbitrary =
[Gen Nonce] -> Gen Nonce
forall a. HasCallStack => [Gen a] -> Gen a
oneof
[ Nonce -> Gen Nonce
forall a. a -> Gen a
forall (m :: * -> *) a. Monad m => a -> m a
return Nonce
Ledger.NeutralNonce
, Word64 -> Nonce
Ledger.mkNonceFromNumber (Word64 -> Nonce) -> Gen Word64 -> Gen Nonce
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen Word64
forall a. Arbitrary a => Gen a
arbitrary
]
instance Arbitrary Ledger.Version where
arbitrary :: Gen Version
arbitrary = HasCallStack => Version -> Version -> Gen Version
Version -> Version -> Gen Version
genVersion Version
forall a. Bounded a => a
minBound Version
forall a. Bounded a => a
maxBound
genVersion :: HasCallStack => Ledger.Version -> Ledger.Version -> Gen Ledger.Version
genVersion :: HasCallStack => Version -> Version -> Gen Version
genVersion Version
minVersion Version
maxVersion =
Word64 -> Word64 -> Gen Version
genVersion64 (Version -> Word64
Ledger.getVersion64 Version
minVersion) (Version -> Word64
Ledger.getVersion64 Version
maxVersion)
where
genVersion64 :: Word64 -> Word64 -> Gen Version
genVersion64 Word64
minVersion64 Word64
maxVersion64 = do
v64 <- (Word64, Word64) -> Gen Word64
forall a. Random a => (a, a) -> Gen a
choose (Word64
minVersion64, Word64
maxVersion64)
case Ledger.mkVersion64 v64 of
Maybe Version
Nothing -> [Char] -> Gen Version
forall a. HasCallStack => [Char] -> a
error ([Char] -> Gen Version) -> [Char] -> Gen Version
forall a b. (a -> b) -> a -> b
$ [Char]
"Impossible: Invalid version generated: " [Char] -> [Char] -> [Char]
forall a. [a] -> [a] -> [a]
++ Word64 -> [Char]
forall a. Show a => a -> [Char]
show Word64
v64
Just Version
v -> Version -> Gen Version
forall a. a -> Gen a
forall (f :: * -> *) a. Applicative f => a -> f a
pure Version
v
instance Arbitrary Ledger.ProtVer where
arbitrary :: Gen ProtVer
arbitrary = Version -> Natural -> ProtVer
Ledger.ProtVer (Version -> Natural -> ProtVer)
-> Gen Version -> Gen (Natural -> ProtVer)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen Version
forall a. Arbitrary a => Gen a
arbitrary Gen (Natural -> ProtVer) -> Gen Natural -> Gen ProtVer
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Natural
forall a. Arbitrary a => Gen a
arbitrary
instance Arbitrary Coin where
arbitrary :: Gen Coin
arbitrary = Integer -> Coin
Coin (Integer -> Coin) -> Gen Integer -> Gen Coin
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [Gen Integer] -> Gen Integer
forall a. HasCallStack => [Gen a] -> Gen a
oneof [(Integer, Integer) -> Gen Integer
forall a. Random a => (a, a) -> Gen a
choose (Integer
0, Integer
1000000), NonNegative Integer -> Integer
forall a. NonNegative a -> a
getNonNegative (NonNegative Integer -> Integer)
-> Gen (NonNegative Integer) -> Gen Integer
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (NonNegative Integer)
forall a. Arbitrary a => Gen a
arbitrary]
shrink :: Coin -> [Coin]
shrink (Coin Integer
i) = Integer -> Coin
Coin (Integer -> Coin) -> [Integer] -> [Coin]
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Integer -> [Integer]
forall a. Arbitrary a => a -> [a]
shrink Integer
i
deriving instance Arbitrary L.CoinPerByte
deriving instance Arbitrary L.CoinPerWord
deriving instance Arbitrary Ledger.OrdExUnits
deriving instance Arbitrary EpochNo
instance Arbitrary Ledger.ScriptHash where
arbitrary :: Gen ScriptHash
arbitrary = Hash ADDRHASH EraIndependentScript -> ScriptHash
Ledger.ScriptHash (Hash ADDRHASH EraIndependentScript -> ScriptHash)
-> Gen (Hash ADDRHASH EraIndependentScript) -> Gen ScriptHash
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (Hash ADDRHASH EraIndependentScript)
forall h a. HashAlgorithm h => Gen (Hash h a)
genHash
instance Arbitrary (L.KeyHash r) where
arbitrary :: Gen (KeyHash r)
arbitrary = Hash ADDRHASH (VerKeyDSIGN DSIGN) -> KeyHash r
forall (r :: KeyRole).
Hash ADDRHASH (VerKeyDSIGN DSIGN) -> KeyHash r
L.KeyHash (Hash ADDRHASH (VerKeyDSIGN DSIGN) -> KeyHash r)
-> Gen (Hash ADDRHASH (VerKeyDSIGN DSIGN)) -> Gen (KeyHash r)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (Hash ADDRHASH (VerKeyDSIGN DSIGN))
forall h a. HashAlgorithm h => Gen (Hash h a)
genHash
instance Arbitrary (VRFVerKeyHash r) where
arbitrary :: Gen (VRFVerKeyHash r)
arbitrary = Hash HASH KeyRoleVRF -> VRFVerKeyHash r
forall (r :: KeyRoleVRF). Hash HASH KeyRoleVRF -> VRFVerKeyHash r
VRFVerKeyHash (Hash HASH KeyRoleVRF -> VRFVerKeyHash r)
-> Gen (Hash HASH KeyRoleVRF) -> Gen (VRFVerKeyHash r)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (Hash HASH KeyRoleVRF)
forall h a. HashAlgorithm h => Gen (Hash h a)
genHash
instance Arbitrary (L.SafeHash i) where
arbitrary :: Gen (SafeHash i)
arbitrary = Hash HASH i -> SafeHash i
forall i. Hash HASH i -> SafeHash i
L.unsafeMakeSafeHash (Hash HASH i -> SafeHash i)
-> Gen (Hash HASH i) -> Gen (SafeHash i)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (Hash HASH i)
forall h a. HashAlgorithm h => Gen (Hash h a)
genHash
genHash :: forall h a. Ledger.HashAlgorithm h => Gen (Crypto.Hash h a)
genHash :: forall h a. HashAlgorithm h => Gen (Hash h a)
genHash = ShortByteString -> Hash h a
forall h a. HashAlgorithm h => ShortByteString -> Hash h a
Crypto.UnsafeHash (ShortByteString -> Hash h a)
-> Gen ShortByteString -> Gen (Hash h a)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Gen ShortByteString
genShortByteString (Word -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Proxy h -> Word
forall h (proxy :: * -> *). HashAlgorithm h => proxy h -> Word
Crypto.sizeHash (forall t. Proxy t
forall {k} (t :: k). Proxy t
Proxy @h)))
genShortByteString :: Int -> Gen SBS.ShortByteString
genShortByteString :: Int -> Gen ShortByteString
genShortByteString Int
n = Int -> QC -> Gen ShortByteString
forall g (m :: * -> *).
StatefulGen g m =>
Int -> g -> m ShortByteString
uniformShortByteString (Int -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral Int
n) QC
QC
data QC = QC
instance StatefulGen QC Gen where
uniformWord32 :: QC -> Gen Word32
uniformWord32 QC
QC = (QCGen -> Int -> Word32) -> Gen Word32
forall a. (QCGen -> Int -> a) -> Gen a
MkGen (\QCGen
r Int
_n -> QCGen -> (StateGenM QCGen -> State QCGen Word32) -> Word32
forall g a. RandomGen g => g -> (StateGenM g -> State g a) -> a
runStateGen_ QCGen
r StateGenM QCGen -> State QCGen Word32
forall g (m :: * -> *). StatefulGen g m => g -> m Word32
uniformWord32)
{-# INLINE uniformWord32 #-}
uniformWord64 :: QC -> Gen Word64
uniformWord64 QC
QC = (QCGen -> Int -> Word64) -> Gen Word64
forall a. (QCGen -> Int -> a) -> Gen a
MkGen (\QCGen
r Int
_n -> QCGen -> (StateGenM QCGen -> State QCGen Word64) -> Word64
forall g a. RandomGen g => g -> (StateGenM g -> State g a) -> a
runStateGen_ QCGen
r StateGenM QCGen -> State QCGen Word64
forall g (m :: * -> *). StatefulGen g m => g -> m Word64
uniformWord64)
{-# INLINE uniformWord64 #-}
uniformShortByteString :: Int -> QC -> Gen ShortByteString
uniformShortByteString Int
k QC
QC =
(QCGen -> Int -> ShortByteString) -> Gen ShortByteString
forall a. (QCGen -> Int -> a) -> Gen a
MkGen (\QCGen
r Int
_n -> QCGen
-> (StateGenM QCGen -> State QCGen ShortByteString)
-> ShortByteString
forall g a. RandomGen g => g -> (StateGenM g -> State g a) -> a
runStateGen_ QCGen
r (Int -> StateGenM QCGen -> State QCGen ShortByteString
forall g (m :: * -> *).
StatefulGen g m =>
Int -> g -> m ShortByteString
uniformShortByteString Int
k))
{-# INLINE uniformShortByteString #-}
instance Arbitrary e => Arbitrary (Ledger.StrictMaybe e) where
arbitrary :: Gen (StrictMaybe e)
arbitrary = Maybe e -> StrictMaybe e
forall a. Maybe a -> StrictMaybe a
Ledger.maybeToStrictMaybe (Maybe e -> StrictMaybe e) -> Gen (Maybe e) -> Gen (StrictMaybe e)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (Maybe e)
forall a. Arbitrary a => Gen a
arbitrary
shrink :: StrictMaybe e -> [StrictMaybe e]
shrink = (Maybe e -> StrictMaybe e) -> [Maybe e] -> [StrictMaybe e]
forall a b. (a -> b) -> [a] -> [b]
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap Maybe e -> StrictMaybe e
forall a. Maybe a -> StrictMaybe a
Ledger.maybeToStrictMaybe ([Maybe e] -> [StrictMaybe e])
-> (StrictMaybe e -> [Maybe e]) -> StrictMaybe e -> [StrictMaybe e]
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Maybe e -> [Maybe e]
forall a. Arbitrary a => a -> [a]
shrink (Maybe e -> [Maybe e])
-> (StrictMaybe e -> Maybe e) -> StrictMaybe e -> [Maybe e]
forall b c a. (b -> c) -> (a -> b) -> a -> c
. StrictMaybe e -> Maybe e
forall a. StrictMaybe a -> Maybe a
Ledger.strictMaybeToMaybe
instance Arbitrary e => Arbitrary (SSeq.StrictSeq e) where
arbitrary :: Gen (StrictSeq e)
arbitrary = [e] -> StrictSeq e
forall a. [a] -> StrictSeq a
SSeq.fromList ([e] -> StrictSeq e) -> Gen [e] -> Gen (StrictSeq e)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen [e]
forall a. Arbitrary a => Gen a
arbitrary
shrink :: StrictSeq e -> [StrictSeq e]
shrink = ([e] -> StrictSeq e) -> [[e]] -> [StrictSeq e]
forall a b. (a -> b) -> [a] -> [b]
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap [e] -> StrictSeq e
forall a. [a] -> StrictSeq a
SSeq.fromList ([[e]] -> [StrictSeq e])
-> (StrictSeq e -> [[e]]) -> StrictSeq e -> [StrictSeq e]
forall b c a. (b -> c) -> (a -> b) -> a -> c
. [e] -> [[e]]
forall a. Arbitrary a => a -> [a]
shrink ([e] -> [[e]]) -> (StrictSeq e -> [e]) -> StrictSeq e -> [[e]]
forall b c a. (b -> c) -> (a -> b) -> a -> c
. StrictSeq e -> [e]
forall a. StrictSeq a -> [a]
forall (t :: * -> *) a. Foldable t => t a -> [a]
F.toList
instance Arbitrary (HKD f a) => Arbitrary (Ledger.THKD t f a) where
arbitrary :: Gen (THKD t f a)
arbitrary = HKD f a -> THKD t f a
forall (t :: PPGroups) (f :: * -> *) a. HKD f a -> THKD t f a
Ledger.THKD (HKD f a -> THKD t f a) -> Gen (HKD f a) -> Gen (THKD t f a)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (HKD f a)
forall a. Arbitrary a => Gen a
arbitrary
instance Arbitrary (NoUpdate a) where
arbitrary :: Gen (NoUpdate a)
arbitrary = NoUpdate a -> Gen (NoUpdate a)
forall a. a -> Gen a
forall (f :: * -> *) a. Applicative f => a -> f a
pure NoUpdate a
forall a. NoUpdate a
NoUpdate
instance Arbitrary MIRPot where
arbitrary :: Gen MIRPot
arbitrary = Gen MIRPot
forall a. (GArbitrary UnsizedOpts a, GUniformWeight a) => Gen a
genericArbitraryU
instance Arbitrary MIRTarget where
arbitrary :: Gen MIRTarget
arbitrary =
[Gen MIRTarget] -> Gen MIRTarget
forall a. HasCallStack => [Gen a] -> Gen a
oneof
[ Map (Credential 'Staking) DeltaCoin -> MIRTarget
L.StakeAddressesMIR (Map (Credential 'Staking) DeltaCoin -> MIRTarget)
-> Gen (Map (Credential 'Staking) DeltaCoin) -> Gen MIRTarget
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (Map (Credential 'Staking) DeltaCoin)
forall a. Arbitrary a => Gen a
arbitrary
, Coin -> MIRTarget
L.SendToOppositePotMIR (Coin -> MIRTarget) -> Gen Coin -> Gen MIRTarget
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen Coin
forall a. Arbitrary a => Gen a
arbitrary
]
instance Arbitrary L.DeltaCoin where
arbitrary :: Gen DeltaCoin
arbitrary = Integer -> DeltaCoin
L.DeltaCoin (Integer -> DeltaCoin) -> Gen Integer -> Gen DeltaCoin
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (Integer, Integer) -> Gen Integer
forall a. Random a => (a, a) -> Gen a
choose (-Integer
1000000, Integer
1000000)
shrink :: DeltaCoin -> [DeltaCoin]
shrink (L.DeltaCoin Integer
i) = Integer -> DeltaCoin
L.DeltaCoin (Integer -> DeltaCoin) -> [Integer] -> [DeltaCoin]
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Integer -> [Integer]
forall a. Arbitrary a => a -> [a]
shrink Integer
i
instance Arbitrary L.Vote where
arbitrary :: Gen Vote
arbitrary = Gen Vote
forall a. (Bounded a, Enum a) => Gen a
arbitraryBoundedEnum
shrink :: Vote -> [Vote]
shrink = Vote -> [Vote]
forall a. (Bounded a, Enum a, Eq a) => a -> [a]
shrinkBoundedEnum
deriving instance Arbitrary L.GovActionIx
instance Arbitrary L.TxId where
arbitrary :: Gen TxId
arbitrary = SafeHash EraIndependentTxBody -> TxId
L.TxId (SafeHash EraIndependentTxBody -> TxId)
-> Gen (SafeHash EraIndependentTxBody) -> Gen TxId
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (SafeHash EraIndependentTxBody)
forall a. Arbitrary a => Gen a
arbitrary
instance Arbitrary L.RewardAccount where
arbitrary :: Gen RewardAccount
arbitrary = Network -> Credential 'Staking -> RewardAccount
L.RewardAccount (Network -> Credential 'Staking -> RewardAccount)
-> Gen Network -> Gen (Credential 'Staking -> RewardAccount)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen Network
forall a. Arbitrary a => Gen a
arbitrary Gen (Credential 'Staking -> RewardAccount)
-> Gen (Credential 'Staking) -> Gen RewardAccount
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (Credential 'Staking)
forall a. Arbitrary a => Gen a
arbitrary
shrink :: RewardAccount -> [RewardAccount]
shrink = RewardAccount -> [RewardAccount]
forall a.
(Generic a, RecursivelyShrink (Rep a), GSubterms (Rep a) a) =>
a -> [a]
genericShrink
instance Arbitrary (L.Credential r) where
arbitrary :: Gen (Credential r)
arbitrary =
[Gen (Credential r)] -> Gen (Credential r)
forall a. HasCallStack => [Gen a] -> Gen a
oneof
[ ScriptHash -> Credential r
forall (kr :: KeyRole). ScriptHash -> Credential kr
L.ScriptHashObj (ScriptHash -> Credential r)
-> Gen ScriptHash -> Gen (Credential r)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen ScriptHash
forall a. Arbitrary a => Gen a
arbitrary
, KeyHash r -> Credential r
forall (kr :: KeyRole). KeyHash kr -> Credential kr
L.KeyHashObj (KeyHash r -> Credential r)
-> Gen (KeyHash r) -> Gen (Credential r)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (KeyHash r)
forall a. Arbitrary a => Gen a
arbitrary
]
instance Arbitrary L.Network where
arbitrary :: Gen Network
arbitrary = Gen Network
forall a. (Bounded a, Enum a) => Gen a
arbitraryBoundedEnum
instance Arbitrary Ledger.Anchor where
arbitrary :: Gen Anchor
arbitrary = Url -> SafeHash AnchorData -> Anchor
L.Anchor (Url -> SafeHash AnchorData -> Anchor)
-> Gen Url -> Gen (SafeHash AnchorData -> Anchor)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen Url
forall a. Arbitrary a => Gen a
arbitrary Gen (SafeHash AnchorData -> Anchor)
-> Gen (SafeHash AnchorData) -> Gen Anchor
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (SafeHash AnchorData)
forall a. Arbitrary a => Gen a
arbitrary
instance Arbitrary L.Url where
arbitrary :: Gen Url
arbitrary = do
let prefix :: Text
prefix = Text
"https://"
n <- (Int, Int) -> Gen Int
chooseInt (Int
5, Int
64 Int -> Int -> Int
forall a. Num a => a -> a -> a
- Text -> Int
T.length Text
prefix)
txt <- genDnsName n
pure $! guardLength n txt $ textToUrl 64 (prefix <> txt)
genDnsName :: Int -> Gen T.Text
genDnsName :: Int -> Gen Text
genDnsName Int
n = do
str <- Int -> Gen Char -> Gen [Char]
forall a. Int -> Gen a -> Gen [a]
vectorOf (Int
n Int -> Int -> Int
forall a. Num a => a -> a -> a
- Int
4) (Gen Char -> Gen [Char]) -> Gen Char -> Gen [Char]
forall a b. (a -> b) -> a -> b
$ [Char] -> Gen Char
forall a. HasCallStack => [a] -> Gen a
elements ([Char] -> Gen Char) -> [Char] -> Gen Char
forall a b. (a -> b) -> a -> b
$ Char
'.' Char -> [Char] -> [Char]
forall a. a -> [a] -> [a]
: Char
'-' Char -> [Char] -> [Char]
forall a. a -> [a] -> [a]
: [Char
'A' .. Char
'Z'] [Char] -> [Char] -> [Char]
forall a. [a] -> [a] -> [a]
++ [Char
'a' .. Char
'z'] [Char] -> [Char] -> [Char]
forall a. [a] -> [a] -> [a]
++ [Char
'0' .. Char
'9']
pure $ T.pack str <> ".com"
guardLength :: HasCallStack => Int -> T.Text -> Maybe a -> a
guardLength :: forall a. HasCallStack => Int -> Text -> Maybe a -> a
guardLength Int
n Text
txt = \case
Maybe a
Nothing -> [Char] -> a
forall a. HasCallStack => [Char] -> a
error ([Char] -> a) -> [Char] -> a
forall a b. (a -> b) -> a -> b
$ [Char]
"Unexpected! Generated length: (" [Char] -> [Char] -> [Char]
forall a. [a] -> [a] -> [a]
++ Int -> [Char]
forall a. Show a => a -> [Char]
show Int
n [Char] -> [Char] -> [Char]
forall a. [a] -> [a] -> [a]
++ [Char]
") " [Char] -> [Char] -> [Char]
forall a. [a] -> [a] -> [a]
++ Text -> [Char]
forall a. Show a => a -> [Char]
show Text
txt
Just a
t -> a
t
instance Arbitrary L.PoolParams where
arbitrary :: Gen PoolParams
arbitrary =
KeyHash 'StakePool
-> VRFVerKeyHash 'StakePoolVRF
-> Coin
-> Coin
-> UnitInterval
-> RewardAccount
-> Set (KeyHash 'Staking)
-> StrictSeq StakePoolRelay
-> StrictMaybe PoolMetadata
-> PoolParams
L.PoolParams
(KeyHash 'StakePool
-> VRFVerKeyHash 'StakePoolVRF
-> Coin
-> Coin
-> UnitInterval
-> RewardAccount
-> Set (KeyHash 'Staking)
-> StrictSeq StakePoolRelay
-> StrictMaybe PoolMetadata
-> PoolParams)
-> Gen (KeyHash 'StakePool)
-> Gen
(VRFVerKeyHash 'StakePoolVRF
-> Coin
-> Coin
-> UnitInterval
-> RewardAccount
-> Set (KeyHash 'Staking)
-> StrictSeq StakePoolRelay
-> StrictMaybe PoolMetadata
-> PoolParams)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (KeyHash 'StakePool)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(VRFVerKeyHash 'StakePoolVRF
-> Coin
-> Coin
-> UnitInterval
-> RewardAccount
-> Set (KeyHash 'Staking)
-> StrictSeq StakePoolRelay
-> StrictMaybe PoolMetadata
-> PoolParams)
-> Gen (VRFVerKeyHash 'StakePoolVRF)
-> Gen
(Coin
-> Coin
-> UnitInterval
-> RewardAccount
-> Set (KeyHash 'Staking)
-> StrictSeq StakePoolRelay
-> StrictMaybe PoolMetadata
-> PoolParams)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (VRFVerKeyHash 'StakePoolVRF)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Coin
-> Coin
-> UnitInterval
-> RewardAccount
-> Set (KeyHash 'Staking)
-> StrictSeq StakePoolRelay
-> StrictMaybe PoolMetadata
-> PoolParams)
-> Gen Coin
-> Gen
(Coin
-> UnitInterval
-> RewardAccount
-> Set (KeyHash 'Staking)
-> StrictSeq StakePoolRelay
-> StrictMaybe PoolMetadata
-> PoolParams)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Coin
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Coin
-> UnitInterval
-> RewardAccount
-> Set (KeyHash 'Staking)
-> StrictSeq StakePoolRelay
-> StrictMaybe PoolMetadata
-> PoolParams)
-> Gen Coin
-> Gen
(UnitInterval
-> RewardAccount
-> Set (KeyHash 'Staking)
-> StrictSeq StakePoolRelay
-> StrictMaybe PoolMetadata
-> PoolParams)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Coin
forall a. Arbitrary a => Gen a
arbitrary
Gen
(UnitInterval
-> RewardAccount
-> Set (KeyHash 'Staking)
-> StrictSeq StakePoolRelay
-> StrictMaybe PoolMetadata
-> PoolParams)
-> Gen UnitInterval
-> Gen
(RewardAccount
-> Set (KeyHash 'Staking)
-> StrictSeq StakePoolRelay
-> StrictMaybe PoolMetadata
-> PoolParams)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen
(RewardAccount
-> Set (KeyHash 'Staking)
-> StrictSeq StakePoolRelay
-> StrictMaybe PoolMetadata
-> PoolParams)
-> Gen RewardAccount
-> Gen
(Set (KeyHash 'Staking)
-> StrictSeq StakePoolRelay
-> StrictMaybe PoolMetadata
-> PoolParams)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen RewardAccount
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Set (KeyHash 'Staking)
-> StrictSeq StakePoolRelay
-> StrictMaybe PoolMetadata
-> PoolParams)
-> Gen (Set (KeyHash 'Staking))
-> Gen
(StrictSeq StakePoolRelay
-> StrictMaybe PoolMetadata -> PoolParams)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (Set (KeyHash 'Staking))
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictSeq StakePoolRelay
-> StrictMaybe PoolMetadata -> PoolParams)
-> Gen (StrictSeq StakePoolRelay)
-> Gen (StrictMaybe PoolMetadata -> PoolParams)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictSeq StakePoolRelay)
forall a. Arbitrary a => Gen a
arbitrary
Gen (StrictMaybe PoolMetadata -> PoolParams)
-> Gen (StrictMaybe PoolMetadata) -> Gen PoolParams
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe PoolMetadata)
forall a. Arbitrary a => Gen a
arbitrary
instance Arbitrary L.StakePoolRelay where
arbitrary :: Gen StakePoolRelay
arbitrary = Gen StakePoolRelay
forall a. (GArbitrary UnsizedOpts a, GUniformWeight a) => Gen a
genericArbitraryU
shrink :: StakePoolRelay -> [StakePoolRelay]
shrink = StakePoolRelay -> [StakePoolRelay]
forall a.
(Generic a, RecursivelyShrink (Rep a), GSubterms (Rep a) a) =>
a -> [a]
genericShrink
instance Arbitrary L.DnsName where
arbitrary :: Gen DnsName
arbitrary = do
n <- (Int, Int) -> Gen Int
chooseInt (Int
5, Int
64)
txt <- genDnsName n
pure $! guardLength n txt $ textToDns 64 txt
instance Arbitrary Ledger.Port where
arbitrary :: Gen Port
arbitrary = forall a b. (Integral a, Num b) => a -> b
fromIntegral @Word16 @Ledger.Port (Word16 -> Port) -> Gen Word16 -> Gen Port
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen Word16
forall a. Arbitrary a => Gen a
arbitrary
instance Arbitrary IPv4 where
arbitrary :: Gen IPv4
arbitrary = Word32 -> IPv4
toIPv4w (Word32 -> IPv4) -> Gen Word32 -> Gen IPv4
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen Word32
forall a. Arbitrary a => Gen a
arbitrary
instance Arbitrary IPv6 where
arbitrary :: Gen IPv6
arbitrary = do
t <- (,,,) (Word32
-> Word32 -> Word32 -> Word32 -> (Word32, Word32, Word32, Word32))
-> Gen Word32
-> Gen
(Word32 -> Word32 -> Word32 -> (Word32, Word32, Word32, Word32))
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen Word32
forall a. Arbitrary a => Gen a
arbitrary Gen
(Word32 -> Word32 -> Word32 -> (Word32, Word32, Word32, Word32))
-> Gen Word32
-> Gen (Word32 -> Word32 -> (Word32, Word32, Word32, Word32))
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Word32
forall a. Arbitrary a => Gen a
arbitrary Gen (Word32 -> Word32 -> (Word32, Word32, Word32, Word32))
-> Gen Word32 -> Gen (Word32 -> (Word32, Word32, Word32, Word32))
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Word32
forall a. Arbitrary a => Gen a
arbitrary Gen (Word32 -> (Word32, Word32, Word32, Word32))
-> Gen Word32 -> Gen (Word32, Word32, Word32, Word32)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Word32
forall a. Arbitrary a => Gen a
arbitrary
pure $ toIPv6w t
instance Arbitrary L.PoolMetadata where
arbitrary :: Gen PoolMetadata
arbitrary = Url -> ByteString -> PoolMetadata
L.PoolMetadata (Url -> ByteString -> PoolMetadata)
-> Gen Url -> Gen (ByteString -> PoolMetadata)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen Url
forall a. Arbitrary a => Gen a
arbitrary Gen (ByteString -> PoolMetadata)
-> Gen ByteString -> Gen PoolMetadata
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen ByteString
forall a. Arbitrary a => Gen a
arbitrary
instance Arbitrary Crypto.ByteString where
arbitrary :: Gen ByteString
arbitrary = [Char] -> ByteString
C8.pack ([Char] -> ByteString) -> Gen [Char] -> Gen ByteString
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen [Char]
forall a. Arbitrary a => Gen a
arbitrary
instance Arbitrary L.ExUnits where
arbitrary :: Gen ExUnits
arbitrary = Natural -> Natural -> ExUnits
L.ExUnits (Natural -> Natural -> ExUnits)
-> Gen Natural -> Gen (Natural -> ExUnits)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen Natural
genUnit Gen (Natural -> ExUnits) -> Gen Natural -> Gen ExUnits
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Natural
genUnit
where
genUnit :: Gen Natural
genUnit = Int64 -> Natural
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int64 -> Natural) -> Gen Int64 -> Gen Natural
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (Int64, Int64) -> Gen Int64
forall a. Random a => (a, a) -> Gen a
choose (Int64
0, Int64
forall a. Bounded a => a
maxBound :: Int64)
instance Arbitrary L.Prices where
arbitrary :: Gen Prices
arbitrary = NonNegativeInterval -> NonNegativeInterval -> Prices
L.Prices (NonNegativeInterval -> NonNegativeInterval -> Prices)
-> Gen NonNegativeInterval -> Gen (NonNegativeInterval -> Prices)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen NonNegativeInterval
forall a. Arbitrary a => Gen a
arbitrary Gen (NonNegativeInterval -> Prices)
-> Gen NonNegativeInterval -> Gen Prices
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen NonNegativeInterval
forall a. Arbitrary a => Gen a
arbitrary
instance Arbitrary Ledger.AssetName where
arbitrary :: Gen AssetName
arbitrary =
ShortByteString -> AssetName
Ledger.AssetName
(ShortByteString -> AssetName)
-> Gen ShortByteString -> Gen AssetName
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [(Int, Gen ShortByteString)] -> Gen ShortByteString
forall a. HasCallStack => [(Int, Gen a)] -> Gen a
frequency
[ (Int
3, [ShortByteString] -> Gen ShortByteString
forall a. HasCallStack => [a] -> Gen a
elements [ShortByteString]
forall s. IsString s => [s]
digitByteStrings)
, (Int
7, Int -> Gen ShortByteString
genShortByteString (Int -> Gen ShortByteString) -> Gen Int -> Gen ShortByteString
forall (m :: * -> *) a b. Monad m => (a -> m b) -> m a -> m b
=<< (Int, Int) -> Gen Int
forall a. Random a => (a, a) -> Gen a
choose (Int
1, Int
32))
]
instance Arbitrary Ledger.PolicyID where
arbitrary :: Gen PolicyID
arbitrary =
ScriptHash -> PolicyID
Ledger.PolicyID (ScriptHash -> PolicyID)
-> (Hash ADDRHASH EraIndependentScript -> ScriptHash)
-> Hash ADDRHASH EraIndependentScript
-> PolicyID
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Hash ADDRHASH EraIndependentScript -> ScriptHash
Ledger.ScriptHash
(Hash ADDRHASH EraIndependentScript -> PolicyID)
-> Gen (Hash ADDRHASH EraIndependentScript) -> Gen PolicyID
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [Gen (Hash ADDRHASH EraIndependentScript)]
-> Gen (Hash ADDRHASH EraIndependentScript)
forall a. HasCallStack => [Gen a] -> Gen a
oneof
[ Gen (Hash ADDRHASH EraIndependentScript)
forall h a. HashAlgorithm h => Gen (Hash h a)
genHash
, [Hash ADDRHASH EraIndependentScript]
-> Gen (Hash ADDRHASH EraIndependentScript)
forall a. HasCallStack => [a] -> Gen a
elements [Hash ADDRHASH EraIndependentScript]
forall h a. HashAlgorithm h => [Hash h a]
hashOfDigitByteStrings
]
digitByteStrings :: IsString s => [s]
digitByteStrings :: forall s. IsString s => [s]
digitByteStrings = [[Char] -> s
forall a. IsString a => [Char] -> a
fromString [Char
x] | Char
x <- [Char
'0' .. Char
'9']]
hashOfDigitByteStrings :: Ledger.HashAlgorithm h => [Crypto.Hash h a]
hashOfDigitByteStrings :: forall h a. HashAlgorithm h => [Hash h a]
hashOfDigitByteStrings = Hash h ByteString -> Hash h a
forall h a b. Hash h a -> Hash h b
Crypto.castHash (Hash h ByteString -> Hash h a)
-> (ByteString -> Hash h ByteString) -> ByteString -> Hash h a
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ByteString -> ByteString) -> ByteString -> Hash h ByteString
forall h a. HashAlgorithm h => (a -> ByteString) -> a -> Hash h a
hashWith ByteString -> ByteString
forall a. a -> a
id (ByteString -> Hash h a) -> [ByteString] -> [Hash h a]
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [ByteString]
forall s. IsString s => [s]
digitByteStrings
instance Arbitrary L.MultiAsset where
arbitrary :: Gen MultiAsset
arbitrary =
Gen Integer -> Gen MultiAsset
genMultiAsset (Gen Integer -> Gen MultiAsset) -> Gen Integer -> Gen MultiAsset
forall a b. (a -> b) -> a -> b
$
Int -> Integer
forall a. Integral a => a -> Integer
toInteger
(Int -> Integer) -> Gen Int -> Gen Integer
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [Gen Int] -> Gen Int
forall a. HasCallStack => [Gen a] -> Gen a
oneof
[ (Int, Int) -> Gen Int
forall a. Random a => (a, a) -> Gen a
choose (Int
1 :: Int, Int
forall a. Bounded a => a
maxBound)
, (Int, Int) -> Gen Int
forall a. Random a => (a, a) -> Gen a
choose (Int
forall a. Bounded a => a
minBound :: Int, -Int
1)
]
genMultiAsset :: Gen Integer -> Gen L.MultiAsset
genMultiAsset :: Gen Integer -> Gen MultiAsset
genMultiAsset Gen Integer
genAmount = do
ma <-
[Gen MultiAsset] -> Gen MultiAsset
forall a. HasCallStack => [Gen a] -> Gen a
oneof
[ Map PolicyID (Map AssetName Integer) -> MultiAsset
L.MultiAsset (Map PolicyID (Map AssetName Integer) -> MultiAsset)
-> Gen (Map PolicyID (Map AssetName Integer)) -> Gen MultiAsset
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen PolicyID
-> Gen (Map AssetName Integer)
-> Gen (Map PolicyID (Map AssetName Integer))
forall k v. Ord k => Gen k -> Gen v -> Gen (Map k v)
genNonEmptyMap Gen PolicyID
forall a. Arbitrary a => Gen a
arbitrary (Gen AssetName -> Gen Integer -> Gen (Map AssetName Integer)
forall k v. Ord k => Gen k -> Gen v -> Gen (Map k v)
genNonEmptyMap Gen AssetName
forall a. Arbitrary a => Gen a
arbitrary Gen Integer
genAmount)
, [(PolicyID, AssetName, Int64)] -> MultiAsset
forall i.
(Bounded i, Integral i) =>
[(PolicyID, AssetName, i)] -> MultiAsset
multiAssetFromListBounded ([(PolicyID, AssetName, Int64)] -> MultiAsset)
-> Gen [(PolicyID, AssetName, Int64)] -> Gen MultiAsset
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (PolicyID, AssetName, Int64)
-> Gen [(PolicyID, AssetName, Int64)]
forall a. Gen a -> Gen [a]
listOf1 (Gen Int64 -> Gen (PolicyID, AssetName, Int64)
genMultiAssetTriple (Gen Int64 -> Gen (PolicyID, AssetName, Int64))
-> Gen Int64 -> Gen (PolicyID, AssetName, Int64)
forall a b. (a -> b) -> a -> b
$ Integer -> Int64
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Integer -> Int64) -> Gen Integer -> Gen Int64
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen Integer
genAmount)
]
if Ledger.isMultiAssetSmallEnough ma
then pure ma
else scale (`div` 2) $ genMultiAsset genAmount
genMultiAssetTriple :: Gen Int64 -> Gen (Ledger.PolicyID, Ledger.AssetName, Int64)
genMultiAssetTriple :: Gen Int64 -> Gen (PolicyID, AssetName, Int64)
genMultiAssetTriple Gen Int64
genAmount = (,,) (PolicyID -> AssetName -> Int64 -> (PolicyID, AssetName, Int64))
-> Gen PolicyID
-> Gen (AssetName -> Int64 -> (PolicyID, AssetName, Int64))
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen PolicyID
forall a. Arbitrary a => Gen a
arbitrary Gen (AssetName -> Int64 -> (PolicyID, AssetName, Int64))
-> Gen AssetName -> Gen (Int64 -> (PolicyID, AssetName, Int64))
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen AssetName
forall a. Arbitrary a => Gen a
arbitrary Gen (Int64 -> (PolicyID, AssetName, Int64))
-> Gen Int64 -> Gen (PolicyID, AssetName, Int64)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Int64
genAmount
multiAssetFromListBounded
:: forall i
. (Bounded i, Integral i)
=> [(Ledger.PolicyID, Ledger.AssetName, i)]
-> L.MultiAsset
multiAssetFromListBounded :: forall i.
(Bounded i, Integral i) =>
[(PolicyID, AssetName, i)] -> MultiAsset
multiAssetFromListBounded =
((PolicyID, AssetName, i) -> MultiAsset -> MultiAsset)
-> MultiAsset -> [(PolicyID, AssetName, i)] -> MultiAsset
forall a b. (a -> b -> b) -> b -> [a] -> b
forall (t :: * -> *) a b.
Foldable t =>
(a -> b -> b) -> b -> t a -> b
foldr
(\(PolicyID
p, AssetName
n, i -> Integer
forall a b. (Integral a, Num b) => a -> b
fromIntegral -> Integer
i) MultiAsset
ans -> (Integer -> Integer -> Integer)
-> PolicyID -> AssetName -> Integer -> MultiAsset -> MultiAsset
ConcreteValue.insertMultiAsset Integer -> Integer -> Integer
comb PolicyID
p AssetName
n Integer
i MultiAsset
ans)
MultiAsset
forall a. Monoid a => a
mempty
where
comb :: Integer -> Integer -> Integer
comb :: Integer -> Integer -> Integer
comb Integer
a Integer
b =
Integer -> Integer -> Integer
forall a. Ord a => a -> a -> a
max
(i -> Integer
forall a b. (Integral a, Num b) => a -> b
fromIntegral (i -> Integer) -> i -> Integer
forall a b. (a -> b) -> a -> b
$ forall a. Bounded a => a
minBound @i)
(Integer -> Integer -> Integer
forall a. Ord a => a -> a -> a
min (i -> Integer
forall a b. (Integral a, Num b) => a -> b
fromIntegral (i -> Integer) -> i -> Integer
forall a b. (a -> b) -> a -> b
$ forall a. Bounded a => a
maxBound @i) (Integer
a Integer -> Integer -> Integer
forall a. Num a => a -> a -> a
+ Integer
b))
instance Arbitrary L.GovActionId where
arbitrary :: Gen GovActionId
arbitrary = TxId -> GovActionIx -> GovActionId
L.GovActionId (TxId -> GovActionIx -> GovActionId)
-> Gen TxId -> Gen (GovActionIx -> GovActionId)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen TxId
forall a. Arbitrary a => Gen a
arbitrary Gen (GovActionIx -> GovActionId)
-> Gen GovActionIx -> Gen GovActionId
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen GovActionIx
forall a. Arbitrary a => Gen a
arbitrary
deriving instance Arbitrary (L.GovPurposeId p era)
instance Arbitrary L.DRep where
arbitrary :: Gen DRep
arbitrary =
[Gen DRep] -> Gen DRep
forall a. HasCallStack => [Gen a] -> Gen a
oneof
[ Credential 'DRepRole -> DRep
L.DRepCredential (Credential 'DRepRole -> DRep)
-> Gen (Credential 'DRepRole) -> Gen DRep
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (Credential 'DRepRole)
forall a. Arbitrary a => Gen a
arbitrary
, DRep -> Gen DRep
forall a. a -> Gen a
forall (f :: * -> *) a. Applicative f => a -> f a
pure DRep
L.DRepAlwaysAbstain
, DRep -> Gen DRep
forall a. a -> Gen a
forall (f :: * -> *) a. Applicative f => a -> f a
pure DRep
L.DRepAlwaysNoConfidence
]
instance Arbitrary L.Delegatee where
arbitrary :: Gen Delegatee
arbitrary =
[Gen Delegatee] -> Gen Delegatee
forall a. HasCallStack => [Gen a] -> Gen a
oneof
[ KeyHash 'StakePool -> Delegatee
L.DelegStake (KeyHash 'StakePool -> Delegatee)
-> Gen (KeyHash 'StakePool) -> Gen Delegatee
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (KeyHash 'StakePool)
forall a. Arbitrary a => Gen a
arbitrary
, DRep -> Delegatee
L.DelegVote (DRep -> Delegatee) -> Gen DRep -> Gen Delegatee
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen DRep
forall a. Arbitrary a => Gen a
arbitrary
, KeyHash 'StakePool -> DRep -> Delegatee
L.DelegStakeVote (KeyHash 'StakePool -> DRep -> Delegatee)
-> Gen (KeyHash 'StakePool) -> Gen (DRep -> Delegatee)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (KeyHash 'StakePool)
forall a. Arbitrary a => Gen a
arbitrary Gen (DRep -> Delegatee) -> Gen DRep -> Gen Delegatee
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen DRep
forall a. Arbitrary a => Gen a
arbitrary
]
instance Arbitrary L.Voter where
arbitrary :: Gen Voter
arbitrary =
[Gen Voter] -> Gen Voter
forall a. HasCallStack => [Gen a] -> Gen a
oneof
[ Credential 'HotCommitteeRole -> Voter
L.CommitteeVoter (Credential 'HotCommitteeRole -> Voter)
-> Gen (Credential 'HotCommitteeRole) -> Gen Voter
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (Credential 'HotCommitteeRole)
forall a. Arbitrary a => Gen a
arbitrary
, Credential 'DRepRole -> Voter
L.DRepVoter (Credential 'DRepRole -> Voter)
-> Gen (Credential 'DRepRole) -> Gen Voter
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (Credential 'DRepRole)
forall a. Arbitrary a => Gen a
arbitrary
, KeyHash 'StakePool -> Voter
L.StakePoolVoter (KeyHash 'StakePool -> Voter)
-> Gen (KeyHash 'StakePool) -> Gen Voter
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (KeyHash 'StakePool)
forall a. Arbitrary a => Gen a
arbitrary
]
shrink :: Voter -> [Voter]
shrink = Voter -> [Voter]
forall a.
(Generic a, RecursivelyShrink (Rep a), GSubterms (Rep a) a) =>
a -> [a]
genericShrink
instance (L.Era era, Arbitrary (L.PParamsUpdate era)) => Arbitrary (L.ProposalProcedure era) where
arbitrary :: Gen (ProposalProcedure era)
arbitrary =
Coin
-> RewardAccount
-> GovAction era
-> Anchor
-> ProposalProcedure era
forall era.
Coin
-> RewardAccount
-> GovAction era
-> Anchor
-> ProposalProcedure era
L.ProposalProcedure
(Coin
-> RewardAccount
-> GovAction era
-> Anchor
-> ProposalProcedure era)
-> Gen Coin
-> Gen
(RewardAccount -> GovAction era -> Anchor -> ProposalProcedure era)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen Coin
forall a. Arbitrary a => Gen a
arbitrary
Gen
(RewardAccount -> GovAction era -> Anchor -> ProposalProcedure era)
-> Gen RewardAccount
-> Gen (GovAction era -> Anchor -> ProposalProcedure era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen RewardAccount
forall a. Arbitrary a => Gen a
arbitrary
Gen (GovAction era -> Anchor -> ProposalProcedure era)
-> Gen (GovAction era) -> Gen (Anchor -> ProposalProcedure era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (GovAction era)
forall a. Arbitrary a => Gen a
arbitrary
Gen (Anchor -> ProposalProcedure era)
-> Gen Anchor -> Gen (ProposalProcedure era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Anchor
forall a. Arbitrary a => Gen a
arbitrary
shrink :: ProposalProcedure era -> [ProposalProcedure era]
shrink (L.ProposalProcedure Coin
dep RewardAccount
ret GovAction era
gov Anchor
anch) =
[ Coin
-> RewardAccount
-> GovAction era
-> Anchor
-> ProposalProcedure era
forall era.
Coin
-> RewardAccount
-> GovAction era
-> Anchor
-> ProposalProcedure era
L.ProposalProcedure Coin
dep' RewardAccount
ret' GovAction era
gov' Anchor
anch'
| (Coin
dep', RewardAccount
ret', GovAction era
gov', Anchor
anch') <- (Coin, RewardAccount, GovAction era, Anchor)
-> [(Coin, RewardAccount, GovAction era, Anchor)]
forall a. Arbitrary a => a -> [a]
shrink (Coin
dep, RewardAccount
ret, GovAction era
gov, Anchor
anch)
]
instance (L.Era era, Arbitrary (L.PParamsUpdate era)) => Arbitrary (L.GovAction era) where
arbitrary :: Gen (GovAction era)
arbitrary = [Gen (GovAction era)] -> Gen (GovAction era)
forall a. HasCallStack => [Gen a] -> Gen a
oneof [Gen (GovAction era)]
forall era.
(Era era, Arbitrary (PParamsUpdate era)) =>
[Gen (GovAction era)]
govActionGenerators
govActionGenerators
:: (L.Era era, Arbitrary (L.PParamsUpdate era))
=> [Gen (L.GovAction era)]
govActionGenerators :: forall era.
(Era era, Arbitrary (PParamsUpdate era)) =>
[Gen (GovAction era)]
govActionGenerators =
[ Gen (GovAction era)
forall era. Arbitrary (PParamsUpdate era) => Gen (GovAction era)
genParameterChange
, Gen (GovAction era)
forall era. Gen (GovAction era)
genHardForkInitiation
, Gen (GovAction era)
forall era. Gen (GovAction era)
genTreasuryWithdrawals
, Gen (GovAction era)
forall era. Gen (GovAction era)
genNoConfidence
, Gen (GovAction era)
forall era. Gen (GovAction era)
genUpdateCommittee
, Gen (GovAction era)
forall era. Era era => Gen (GovAction era)
genNewConstitution
, GovAction era -> Gen (GovAction era)
forall a. a -> Gen a
forall (f :: * -> *) a. Applicative f => a -> f a
pure GovAction era
forall era. GovAction era
L.InfoAction
]
genParameterChange :: Arbitrary (L.PParamsUpdate era) => Gen (L.GovAction era)
genParameterChange :: forall era. Arbitrary (PParamsUpdate era) => Gen (GovAction era)
genParameterChange = StrictMaybe (GovPurposeId 'PParamUpdatePurpose era)
-> PParamsUpdate era -> StrictMaybe ScriptHash -> GovAction era
forall era.
StrictMaybe (GovPurposeId 'PParamUpdatePurpose era)
-> PParamsUpdate era -> StrictMaybe ScriptHash -> GovAction era
L.ParameterChange (StrictMaybe (GovPurposeId 'PParamUpdatePurpose era)
-> PParamsUpdate era -> StrictMaybe ScriptHash -> GovAction era)
-> Gen (StrictMaybe (GovPurposeId 'PParamUpdatePurpose era))
-> Gen
(PParamsUpdate era -> StrictMaybe ScriptHash -> GovAction era)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (StrictMaybe (GovPurposeId 'PParamUpdatePurpose era))
forall a. Arbitrary a => Gen a
arbitrary Gen (PParamsUpdate era -> StrictMaybe ScriptHash -> GovAction era)
-> Gen (PParamsUpdate era)
-> Gen (StrictMaybe ScriptHash -> GovAction era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (PParamsUpdate era)
forall a. Arbitrary a => Gen a
arbitrary Gen (StrictMaybe ScriptHash -> GovAction era)
-> Gen (StrictMaybe ScriptHash) -> Gen (GovAction era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe ScriptHash)
forall a. Arbitrary a => Gen a
arbitrary
genHardForkInitiation :: Gen (L.GovAction era)
genHardForkInitiation :: forall era. Gen (GovAction era)
genHardForkInitiation = StrictMaybe (GovPurposeId 'HardForkPurpose era)
-> ProtVer -> GovAction era
forall era.
StrictMaybe (GovPurposeId 'HardForkPurpose era)
-> ProtVer -> GovAction era
L.HardForkInitiation (StrictMaybe (GovPurposeId 'HardForkPurpose era)
-> ProtVer -> GovAction era)
-> Gen (StrictMaybe (GovPurposeId 'HardForkPurpose era))
-> Gen (ProtVer -> GovAction era)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (StrictMaybe (GovPurposeId 'HardForkPurpose era))
forall a. Arbitrary a => Gen a
arbitrary Gen (ProtVer -> GovAction era)
-> Gen ProtVer -> Gen (GovAction era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen ProtVer
forall a. Arbitrary a => Gen a
arbitrary
genTreasuryWithdrawals :: Gen (L.GovAction era)
genTreasuryWithdrawals :: forall era. Gen (GovAction era)
genTreasuryWithdrawals = Map RewardAccount Coin -> StrictMaybe ScriptHash -> GovAction era
forall era.
Map RewardAccount Coin -> StrictMaybe ScriptHash -> GovAction era
L.TreasuryWithdrawals (Map RewardAccount Coin -> StrictMaybe ScriptHash -> GovAction era)
-> Gen (Map RewardAccount Coin)
-> Gen (StrictMaybe ScriptHash -> GovAction era)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (Map RewardAccount Coin)
forall a. Arbitrary a => Gen a
arbitrary Gen (StrictMaybe ScriptHash -> GovAction era)
-> Gen (StrictMaybe ScriptHash) -> Gen (GovAction era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe ScriptHash)
forall a. Arbitrary a => Gen a
arbitrary
genNoConfidence :: Gen (L.GovAction era)
genNoConfidence :: forall era. Gen (GovAction era)
genNoConfidence = StrictMaybe (GovPurposeId 'CommitteePurpose era) -> GovAction era
forall era.
StrictMaybe (GovPurposeId 'CommitteePurpose era) -> GovAction era
L.NoConfidence (StrictMaybe (GovPurposeId 'CommitteePurpose era) -> GovAction era)
-> Gen (StrictMaybe (GovPurposeId 'CommitteePurpose era))
-> Gen (GovAction era)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (StrictMaybe (GovPurposeId 'CommitteePurpose era))
forall a. Arbitrary a => Gen a
arbitrary
genUpdateCommittee :: Gen (L.GovAction era)
genUpdateCommittee :: forall era. Gen (GovAction era)
genUpdateCommittee =
StrictMaybe (GovPurposeId 'CommitteePurpose era)
-> Set (Credential 'ColdCommitteeRole)
-> Map (Credential 'ColdCommitteeRole) EpochNo
-> UnitInterval
-> GovAction era
forall era.
StrictMaybe (GovPurposeId 'CommitteePurpose era)
-> Set (Credential 'ColdCommitteeRole)
-> Map (Credential 'ColdCommitteeRole) EpochNo
-> UnitInterval
-> GovAction era
L.UpdateCommittee
(StrictMaybe (GovPurposeId 'CommitteePurpose era)
-> Set (Credential 'ColdCommitteeRole)
-> Map (Credential 'ColdCommitteeRole) EpochNo
-> UnitInterval
-> GovAction era)
-> Gen (StrictMaybe (GovPurposeId 'CommitteePurpose era))
-> Gen
(Set (Credential 'ColdCommitteeRole)
-> Map (Credential 'ColdCommitteeRole) EpochNo
-> UnitInterval
-> GovAction era)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (StrictMaybe (GovPurposeId 'CommitteePurpose era))
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Set (Credential 'ColdCommitteeRole)
-> Map (Credential 'ColdCommitteeRole) EpochNo
-> UnitInterval
-> GovAction era)
-> Gen (Set (Credential 'ColdCommitteeRole))
-> Gen
(Map (Credential 'ColdCommitteeRole) EpochNo
-> UnitInterval -> GovAction era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (Set (Credential 'ColdCommitteeRole))
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Map (Credential 'ColdCommitteeRole) EpochNo
-> UnitInterval -> GovAction era)
-> Gen (Map (Credential 'ColdCommitteeRole) EpochNo)
-> Gen (UnitInterval -> GovAction era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (Map (Credential 'ColdCommitteeRole) EpochNo)
forall a. Arbitrary a => Gen a
arbitrary
Gen (UnitInterval -> GovAction era)
-> Gen UnitInterval -> Gen (GovAction era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
genNewConstitution :: L.Era era => Gen (L.GovAction era)
genNewConstitution :: forall era. Era era => Gen (GovAction era)
genNewConstitution = StrictMaybe (GovPurposeId 'ConstitutionPurpose era)
-> Constitution era -> GovAction era
forall era.
StrictMaybe (GovPurposeId 'ConstitutionPurpose era)
-> Constitution era -> GovAction era
L.NewConstitution (StrictMaybe (GovPurposeId 'ConstitutionPurpose era)
-> Constitution era -> GovAction era)
-> Gen (StrictMaybe (GovPurposeId 'ConstitutionPurpose era))
-> Gen (Constitution era -> GovAction era)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (StrictMaybe (GovPurposeId 'ConstitutionPurpose era))
forall a. Arbitrary a => Gen a
arbitrary Gen (Constitution era -> GovAction era)
-> Gen (Constitution era) -> Gen (GovAction era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (Constitution era)
forall a. Arbitrary a => Gen a
arbitrary
deriving instance
(Ledger.Era era, Arbitrary (Ledger.PParamsHKD Identity era)) => Arbitrary (Ledger.PParams era)
deriving instance
(L.Era era, Arbitrary (L.PParamsHKD L.StrictMaybe era)) => Arbitrary (L.PParamsUpdate era)
instance Ledger.Era era => Arbitrary (L.VotingProcedures era) where
arbitrary :: Gen (VotingProcedures era)
arbitrary = Map Voter (Map GovActionId (VotingProcedure era))
-> VotingProcedures era
forall era.
Map Voter (Map GovActionId (VotingProcedure era))
-> VotingProcedures era
L.VotingProcedures (Map Voter (Map GovActionId (VotingProcedure era))
-> VotingProcedures era)
-> Gen (Map Voter (Map GovActionId (VotingProcedure era)))
-> Gen (VotingProcedures era)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (Map GovActionId (VotingProcedure era))
-> Gen (Map Voter (Map GovActionId (VotingProcedure era)))
forall a. Gen a -> Gen (Map Voter a)
forall (f :: * -> *) a. Arbitrary1 f => Gen a -> Gen (f a)
liftArbitrary (Gen GovActionId
-> Gen (VotingProcedure era)
-> Gen (Map GovActionId (VotingProcedure era))
forall k v. Ord k => Gen k -> Gen v -> Gen (Map k v)
genNonEmptyMap Gen GovActionId
forall a. Arbitrary a => Gen a
arbitrary Gen (VotingProcedure era)
forall a. Arbitrary a => Gen a
arbitrary)
instance Ledger.Era era => Arbitrary (L.VotingProcedure era) where
arbitrary :: Gen (VotingProcedure era)
arbitrary = Vote -> StrictMaybe Anchor -> VotingProcedure era
forall era. Vote -> StrictMaybe Anchor -> VotingProcedure era
L.VotingProcedure (Vote -> StrictMaybe Anchor -> VotingProcedure era)
-> Gen Vote -> Gen (StrictMaybe Anchor -> VotingProcedure era)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen Vote
forall a. Arbitrary a => Gen a
arbitrary Gen (StrictMaybe Anchor -> VotingProcedure era)
-> Gen (StrictMaybe Anchor) -> Gen (VotingProcedure era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Anchor)
forall a. Arbitrary a => Gen a
arbitrary
genNonEmptyMap :: Ord k => Gen k -> Gen v -> Gen (Map.Map k v)
genNonEmptyMap :: forall k v. Ord k => Gen k -> Gen v -> Gen (Map k v)
genNonEmptyMap Gen k
genKey Gen v
genVal = [(k, v)] -> Map k v
forall k a. Ord k => [(k, a)] -> Map k a
Map.fromList ([(k, v)] -> Map k v) -> Gen [(k, v)] -> Gen (Map k v)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (k, v) -> Gen [(k, v)]
forall a. Gen a -> Gen [a]
listOf1 ((,) (k -> v -> (k, v)) -> Gen k -> Gen (v -> (k, v))
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen k
genKey Gen (v -> (k, v)) -> Gen v -> Gen (k, v)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen v
genVal)
instance Ledger.Era era => Arbitrary (ShelleyPParams Identity era) where
arbitrary :: Gen (ShelleyPParams Identity era)
arbitrary = Gen (ShelleyPParams Identity era)
forall a. (GArbitrary UnsizedOpts a, GUniformWeight a) => Gen a
genericArbitraryU
shrink :: ShelleyPParams Identity era -> [ShelleyPParams Identity era]
shrink = ShelleyPParams Identity era -> [ShelleyPParams Identity era]
forall a.
(Generic a, RecursivelyShrink (Rep a), GSubterms (Rep a) a) =>
a -> [a]
genericShrink
instance Ledger.Era era => Arbitrary (ShelleyPParams Ledger.StrictMaybe era) where
arbitrary :: Gen (ShelleyPParams StrictMaybe era)
arbitrary = Gen (ShelleyPParams StrictMaybe era)
forall a. (GArbitrary UnsizedOpts a, GUniformWeight a) => Gen a
genericArbitraryU
shrink :: ShelleyPParams StrictMaybe era -> [ShelleyPParams StrictMaybe era]
shrink = ShelleyPParams StrictMaybe era -> [ShelleyPParams StrictMaybe era]
forall a.
(Generic a, RecursivelyShrink (Rep a), GSubterms (Rep a) a) =>
a -> [a]
genericShrink
instance Arbitrary (Ledger.AlonzoPParams Identity era) where
arbitrary :: Gen (AlonzoPParams Identity era)
arbitrary =
Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era
HKD Identity Coin
-> HKD Identity Coin
-> HKD Identity Word32
-> HKD Identity Word32
-> HKD Identity Word16
-> HKD Identity Coin
-> HKD Identity Coin
-> HKD Identity EpochInterval
-> HKD Identity Word16
-> HKD Identity NonNegativeInterval
-> HKD Identity UnitInterval
-> HKD Identity UnitInterval
-> HKD Identity UnitInterval
-> HKD Identity Nonce
-> HKD Identity ProtVer
-> HKD Identity Coin
-> HKD Identity CoinPerWord
-> HKD Identity CostModels
-> HKD Identity Prices
-> HKD Identity OrdExUnits
-> HKD Identity OrdExUnits
-> HKD Identity Natural
-> HKD Identity Natural
-> HKD Identity Natural
-> AlonzoPParams Identity era
forall (f :: * -> *) era.
HKD f Coin
-> HKD f Coin
-> HKD f Word32
-> HKD f Word32
-> HKD f Word16
-> HKD f Coin
-> HKD f Coin
-> HKD f EpochInterval
-> HKD f Word16
-> HKD f NonNegativeInterval
-> HKD f UnitInterval
-> HKD f UnitInterval
-> HKD f UnitInterval
-> HKD f Nonce
-> HKD f ProtVer
-> HKD f Coin
-> HKD f CoinPerWord
-> HKD f CostModels
-> HKD f Prices
-> HKD f OrdExUnits
-> HKD f OrdExUnits
-> HKD f Natural
-> HKD f Natural
-> HKD f Natural
-> AlonzoPParams f era
Ledger.AlonzoPParams
(Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
-> Gen Coin
-> Gen
(Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen Coin
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
-> Gen Coin
-> Gen
(Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Coin
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
-> Gen Word32
-> Gen
(Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Word32
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
-> Gen Word32
-> Gen
(Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Word32
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
-> Gen Word16
-> Gen
(Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Word16
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
-> Gen Coin
-> Gen
(Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Coin
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
-> Gen Coin
-> Gen
(EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Coin
forall a. Arbitrary a => Gen a
arbitrary
Gen
(EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
-> Gen EpochInterval
-> Gen
(Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen EpochInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
-> Gen Word16
-> Gen
(NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Word16
forall a. Arbitrary a => Gen a
arbitrary
Gen
(NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
-> Gen NonNegativeInterval
-> Gen
(UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen NonNegativeInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen
(UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
-> Gen UnitInterval
-> Gen
(UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen
(UnitInterval
-> UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
-> Gen UnitInterval
-> Gen
(UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen
(UnitInterval
-> Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
-> Gen UnitInterval
-> Gen
(Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Nonce
-> ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
-> Gen Nonce
-> Gen
(ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Nonce
forall a. Arbitrary a => Gen a
arbitrary
Gen
(ProtVer
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
-> Gen ProtVer
-> Gen
(Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen ProtVer
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
-> Gen Coin
-> Gen
(CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Coin
forall a. Arbitrary a => Gen a
arbitrary
Gen
(CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
-> Gen CoinPerWord
-> Gen
(CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen CoinPerWord
forall a. Arbitrary a => Gen a
arbitrary
Gen
(CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
-> Gen CostModels
-> Gen
(Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Set Language -> Gen CostModels
genValidCostModels ([Language] -> Set Language
forall a. Ord a => [a] -> Set a
Set.fromList [Language
L.PlutusV1, Language
L.PlutusV2])
Gen
(Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
-> Gen Prices
-> Gen
(OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Prices
forall a. Arbitrary a => Gen a
arbitrary
Gen
(OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> AlonzoPParams Identity era)
-> Gen OrdExUnits
-> Gen
(OrdExUnits
-> Natural -> Natural -> Natural -> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen OrdExUnits
forall a. Arbitrary a => Gen a
arbitrary
Gen
(OrdExUnits
-> Natural -> Natural -> Natural -> AlonzoPParams Identity era)
-> Gen OrdExUnits
-> Gen
(Natural -> Natural -> Natural -> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen OrdExUnits
forall a. Arbitrary a => Gen a
arbitrary
Gen (Natural -> Natural -> Natural -> AlonzoPParams Identity era)
-> Gen Natural
-> Gen (Natural -> Natural -> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Natural
forall a. Arbitrary a => Gen a
arbitrary
Gen (Natural -> Natural -> AlonzoPParams Identity era)
-> Gen Natural -> Gen (Natural -> AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Natural
forall a. Arbitrary a => Gen a
arbitrary
Gen (Natural -> AlonzoPParams Identity era)
-> Gen Natural -> Gen (AlonzoPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Natural
forall a. Arbitrary a => Gen a
arbitrary
instance Arbitrary (Ledger.AlonzoPParams Ledger.StrictMaybe era) where
arbitrary :: Gen (AlonzoPParams StrictMaybe era)
arbitrary =
StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe Word32
-> StrictMaybe Word32
-> StrictMaybe Word16
-> StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era
HKD StrictMaybe Coin
-> HKD StrictMaybe Coin
-> HKD StrictMaybe Word32
-> HKD StrictMaybe Word32
-> HKD StrictMaybe Word16
-> HKD StrictMaybe Coin
-> HKD StrictMaybe Coin
-> HKD StrictMaybe EpochInterval
-> HKD StrictMaybe Word16
-> HKD StrictMaybe NonNegativeInterval
-> HKD StrictMaybe UnitInterval
-> HKD StrictMaybe UnitInterval
-> HKD StrictMaybe UnitInterval
-> HKD StrictMaybe Nonce
-> HKD StrictMaybe ProtVer
-> HKD StrictMaybe Coin
-> HKD StrictMaybe CoinPerWord
-> HKD StrictMaybe CostModels
-> HKD StrictMaybe Prices
-> HKD StrictMaybe OrdExUnits
-> HKD StrictMaybe OrdExUnits
-> HKD StrictMaybe Natural
-> HKD StrictMaybe Natural
-> HKD StrictMaybe Natural
-> AlonzoPParams StrictMaybe era
forall (f :: * -> *) era.
HKD f Coin
-> HKD f Coin
-> HKD f Word32
-> HKD f Word32
-> HKD f Word16
-> HKD f Coin
-> HKD f Coin
-> HKD f EpochInterval
-> HKD f Word16
-> HKD f NonNegativeInterval
-> HKD f UnitInterval
-> HKD f UnitInterval
-> HKD f UnitInterval
-> HKD f Nonce
-> HKD f ProtVer
-> HKD f Coin
-> HKD f CoinPerWord
-> HKD f CostModels
-> HKD f Prices
-> HKD f OrdExUnits
-> HKD f OrdExUnits
-> HKD f Natural
-> HKD f Natural
-> HKD f Natural
-> AlonzoPParams f era
Ledger.AlonzoPParams
(StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe Word32
-> StrictMaybe Word32
-> StrictMaybe Word16
-> StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe Coin)
-> Gen
(StrictMaybe Coin
-> StrictMaybe Word32
-> StrictMaybe Word32
-> StrictMaybe Word16
-> StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (StrictMaybe Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Coin
-> StrictMaybe Word32
-> StrictMaybe Word32
-> StrictMaybe Word16
-> StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe Coin)
-> Gen
(StrictMaybe Word32
-> StrictMaybe Word32
-> StrictMaybe Word16
-> StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Word32
-> StrictMaybe Word32
-> StrictMaybe Word16
-> StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe Word32)
-> Gen
(StrictMaybe Word32
-> StrictMaybe Word16
-> StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Word32)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Word32
-> StrictMaybe Word16
-> StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe Word32)
-> Gen
(StrictMaybe Word16
-> StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Word32)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Word16
-> StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe Word16)
-> Gen
(StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Word16)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe Coin)
-> Gen
(StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe Coin)
-> Gen
(StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe EpochInterval)
-> Gen
(StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe EpochInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe Word16)
-> Gen
(StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Word16)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe NonNegativeInterval)
-> Gen
(StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe NonNegativeInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe UnitInterval)
-> Gen
(StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe UnitInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe UnitInterval)
-> Gen
(StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe UnitInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe UnitInterval
-> StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe UnitInterval)
-> Gen
(StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe UnitInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Nonce
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe Nonce)
-> Gen
(StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Nonce)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe ProtVer)
-> Gen
(StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe ProtVer)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Coin
-> StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe Coin)
-> Gen
(StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe CoinPerWord
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe CoinPerWord)
-> Gen
(StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe CoinPerWord)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe CostModels)
-> Gen
(StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> [Gen (StrictMaybe CostModels)] -> Gen (StrictMaybe CostModels)
forall a. HasCallStack => [Gen a] -> Gen a
oneof
[ StrictMaybe CostModels -> Gen (StrictMaybe CostModels)
forall a. a -> Gen a
forall (f :: * -> *) a. Applicative f => a -> f a
pure StrictMaybe CostModels
forall a. StrictMaybe a
Ledger.SNothing
, CostModels -> StrictMaybe CostModels
forall a. a -> StrictMaybe a
Ledger.SJust (CostModels -> StrictMaybe CostModels)
-> Gen CostModels -> Gen (StrictMaybe CostModels)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Set Language -> Gen CostModels
genValidCostModels ([Language] -> Set Language
forall a. Ord a => [a] -> Set a
Set.fromList [Language
L.PlutusV1, Language
L.PlutusV2])
]
Gen
(StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe Prices)
-> Gen
(StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Prices)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe OrdExUnits)
-> Gen
(StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe OrdExUnits)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe OrdExUnits)
-> Gen
(StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe OrdExUnits)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe Natural)
-> Gen
(StrictMaybe Natural
-> StrictMaybe Natural -> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Natural)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Natural
-> StrictMaybe Natural -> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe Natural)
-> Gen (StrictMaybe Natural -> AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Natural)
forall a. Arbitrary a => Gen a
arbitrary
Gen (StrictMaybe Natural -> AlonzoPParams StrictMaybe era)
-> Gen (StrictMaybe Natural) -> Gen (AlonzoPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Natural)
forall a. Arbitrary a => Gen a
arbitrary
instance Arbitrary (Ledger.BabbagePParams Identity era) where
arbitrary :: Gen (BabbagePParams Identity era)
arbitrary =
Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era
HKD Identity Coin
-> HKD Identity Coin
-> HKD Identity Word32
-> HKD Identity Word32
-> HKD Identity Word16
-> HKD Identity Coin
-> HKD Identity Coin
-> HKD Identity EpochInterval
-> HKD Identity Word16
-> HKD Identity NonNegativeInterval
-> HKD Identity UnitInterval
-> HKD Identity UnitInterval
-> HKD Identity ProtVer
-> HKD Identity Coin
-> HKD Identity CoinPerByte
-> HKD Identity CostModels
-> HKD Identity Prices
-> HKD Identity OrdExUnits
-> HKD Identity OrdExUnits
-> HKD Identity Natural
-> HKD Identity Natural
-> HKD Identity Natural
-> BabbagePParams Identity era
forall (f :: * -> *) era.
HKD f Coin
-> HKD f Coin
-> HKD f Word32
-> HKD f Word32
-> HKD f Word16
-> HKD f Coin
-> HKD f Coin
-> HKD f EpochInterval
-> HKD f Word16
-> HKD f NonNegativeInterval
-> HKD f UnitInterval
-> HKD f UnitInterval
-> HKD f ProtVer
-> HKD f Coin
-> HKD f CoinPerByte
-> HKD f CostModels
-> HKD f Prices
-> HKD f OrdExUnits
-> HKD f OrdExUnits
-> HKD f Natural
-> HKD f Natural
-> HKD f Natural
-> BabbagePParams f era
Ledger.BabbagePParams
(Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
-> Gen Coin
-> Gen
(Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen Coin
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
-> Gen Coin
-> Gen
(Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Coin
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
-> Gen Word32
-> Gen
(Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Word32
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
-> Gen Word32
-> Gen
(Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Word32
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
-> Gen Word16
-> Gen
(Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Word16
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
-> Gen Coin
-> Gen
(Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Coin
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
-> Gen Coin
-> Gen
(EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Coin
forall a. Arbitrary a => Gen a
arbitrary
Gen
(EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
-> Gen EpochInterval
-> Gen
(Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen EpochInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
-> Gen Word16
-> Gen
(NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Word16
forall a. Arbitrary a => Gen a
arbitrary
Gen
(NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
-> Gen NonNegativeInterval
-> Gen
(UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen NonNegativeInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen
(UnitInterval
-> UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
-> Gen UnitInterval
-> Gen
(UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen
(UnitInterval
-> ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
-> Gen UnitInterval
-> Gen
(ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen
(ProtVer
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
-> Gen ProtVer
-> Gen
(Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen ProtVer
forall a. Arbitrary a => Gen a
arbitrary
Gen
(Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
-> Gen Coin
-> Gen
(CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Coin
forall a. Arbitrary a => Gen a
arbitrary
Gen
(CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
-> Gen CoinPerByte
-> Gen
(CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen CoinPerByte
forall a. Arbitrary a => Gen a
arbitrary
Gen
(CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
-> Gen CostModels
-> Gen
(Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Set Language -> Gen CostModels
genValidCostModels ([Language] -> Set Language
forall a. Ord a => [a] -> Set a
Set.fromList [Language
L.PlutusV1, Language
L.PlutusV2])
Gen
(Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
-> Gen Prices
-> Gen
(OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Prices
forall a. Arbitrary a => Gen a
arbitrary
Gen
(OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> BabbagePParams Identity era)
-> Gen OrdExUnits
-> Gen
(OrdExUnits
-> Natural -> Natural -> Natural -> BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen OrdExUnits
forall a. Arbitrary a => Gen a
arbitrary
Gen
(OrdExUnits
-> Natural -> Natural -> Natural -> BabbagePParams Identity era)
-> Gen OrdExUnits
-> Gen
(Natural -> Natural -> Natural -> BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen OrdExUnits
forall a. Arbitrary a => Gen a
arbitrary
Gen (Natural -> Natural -> Natural -> BabbagePParams Identity era)
-> Gen Natural
-> Gen (Natural -> Natural -> BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Natural
forall a. Arbitrary a => Gen a
arbitrary
Gen (Natural -> Natural -> BabbagePParams Identity era)
-> Gen Natural -> Gen (Natural -> BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Natural
forall a. Arbitrary a => Gen a
arbitrary
Gen (Natural -> BabbagePParams Identity era)
-> Gen Natural -> Gen (BabbagePParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen Natural
forall a. Arbitrary a => Gen a
arbitrary
instance Arbitrary (Ledger.BabbagePParams Ledger.StrictMaybe era) where
arbitrary :: Gen (BabbagePParams StrictMaybe era)
arbitrary =
StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe Word32
-> StrictMaybe Word32
-> StrictMaybe Word16
-> StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era
HKD StrictMaybe Coin
-> HKD StrictMaybe Coin
-> HKD StrictMaybe Word32
-> HKD StrictMaybe Word32
-> HKD StrictMaybe Word16
-> HKD StrictMaybe Coin
-> HKD StrictMaybe Coin
-> HKD StrictMaybe EpochInterval
-> HKD StrictMaybe Word16
-> HKD StrictMaybe NonNegativeInterval
-> HKD StrictMaybe UnitInterval
-> HKD StrictMaybe UnitInterval
-> HKD StrictMaybe ProtVer
-> HKD StrictMaybe Coin
-> HKD StrictMaybe CoinPerByte
-> HKD StrictMaybe CostModels
-> HKD StrictMaybe Prices
-> HKD StrictMaybe OrdExUnits
-> HKD StrictMaybe OrdExUnits
-> HKD StrictMaybe Natural
-> HKD StrictMaybe Natural
-> HKD StrictMaybe Natural
-> BabbagePParams StrictMaybe era
forall (f :: * -> *) era.
HKD f Coin
-> HKD f Coin
-> HKD f Word32
-> HKD f Word32
-> HKD f Word16
-> HKD f Coin
-> HKD f Coin
-> HKD f EpochInterval
-> HKD f Word16
-> HKD f NonNegativeInterval
-> HKD f UnitInterval
-> HKD f UnitInterval
-> HKD f ProtVer
-> HKD f Coin
-> HKD f CoinPerByte
-> HKD f CostModels
-> HKD f Prices
-> HKD f OrdExUnits
-> HKD f OrdExUnits
-> HKD f Natural
-> HKD f Natural
-> HKD f Natural
-> BabbagePParams f era
Ledger.BabbagePParams
(StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe Word32
-> StrictMaybe Word32
-> StrictMaybe Word16
-> StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe Coin)
-> Gen
(StrictMaybe Coin
-> StrictMaybe Word32
-> StrictMaybe Word32
-> StrictMaybe Word16
-> StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (StrictMaybe Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Coin
-> StrictMaybe Word32
-> StrictMaybe Word32
-> StrictMaybe Word16
-> StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe Coin)
-> Gen
(StrictMaybe Word32
-> StrictMaybe Word32
-> StrictMaybe Word16
-> StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Word32
-> StrictMaybe Word32
-> StrictMaybe Word16
-> StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe Word32)
-> Gen
(StrictMaybe Word32
-> StrictMaybe Word16
-> StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Word32)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Word32
-> StrictMaybe Word16
-> StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe Word32)
-> Gen
(StrictMaybe Word16
-> StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Word32)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Word16
-> StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe Word16)
-> Gen
(StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Word16)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Coin
-> StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe Coin)
-> Gen
(StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Coin
-> StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe Coin)
-> Gen
(StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe EpochInterval
-> StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe EpochInterval)
-> Gen
(StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe EpochInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Word16
-> StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe Word16)
-> Gen
(StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Word16)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe NonNegativeInterval
-> StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe NonNegativeInterval)
-> Gen
(StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe NonNegativeInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe UnitInterval
-> StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe UnitInterval)
-> Gen
(StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe UnitInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe UnitInterval
-> StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe UnitInterval)
-> Gen
(StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe UnitInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe ProtVer
-> StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe ProtVer)
-> Gen
(StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe ProtVer)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Coin
-> StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe Coin)
-> Gen
(StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe CoinPerByte
-> StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe CoinPerByte)
-> Gen
(StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe CoinPerByte)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe CostModels
-> StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe CostModels)
-> Gen
(StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> [Gen (StrictMaybe CostModels)] -> Gen (StrictMaybe CostModels)
forall a. HasCallStack => [Gen a] -> Gen a
oneof
[ StrictMaybe CostModels -> Gen (StrictMaybe CostModels)
forall a. a -> Gen a
forall (f :: * -> *) a. Applicative f => a -> f a
pure StrictMaybe CostModels
forall a. StrictMaybe a
Ledger.SNothing
, CostModels -> StrictMaybe CostModels
forall a. a -> StrictMaybe a
Ledger.SJust (CostModels -> StrictMaybe CostModels)
-> Gen CostModels -> Gen (StrictMaybe CostModels)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Set Language -> Gen CostModels
genValidCostModels ([Language] -> Set Language
forall a. Ord a => [a] -> Set a
Set.fromList [Language
L.PlutusV1, Language
L.PlutusV2])
]
Gen
(StrictMaybe Prices
-> StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe Prices)
-> Gen
(StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Prices)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe OrdExUnits
-> StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe OrdExUnits)
-> Gen
(StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe OrdExUnits)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe OrdExUnits
-> StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe OrdExUnits)
-> Gen
(StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe OrdExUnits)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Natural
-> StrictMaybe Natural
-> StrictMaybe Natural
-> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe Natural)
-> Gen
(StrictMaybe Natural
-> StrictMaybe Natural -> BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Natural)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(StrictMaybe Natural
-> StrictMaybe Natural -> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe Natural)
-> Gen (StrictMaybe Natural -> BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Natural)
forall a. Arbitrary a => Gen a
arbitrary
Gen (StrictMaybe Natural -> BabbagePParams StrictMaybe era)
-> Gen (StrictMaybe Natural)
-> Gen (BabbagePParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe Natural)
forall a. Arbitrary a => Gen a
arbitrary
instance Ledger.Era era => Arbitrary (Ledger.ConwayPParams Identity era) where
arbitrary :: Gen (ConwayPParams Identity era)
arbitrary =
THKD ('PPGroups 'EconomicGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'EconomicGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word16
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era
THKD ('PPGroups 'EconomicGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'EconomicGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word16
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> HKDNoUpdate Identity ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era
forall (f :: * -> *) era.
THKD ('PPGroups 'EconomicGroup 'SecurityGroup) f Coin
-> THKD ('PPGroups 'EconomicGroup 'SecurityGroup) f Coin
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) f Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) f Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) f Word16
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) f Coin
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) f Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) f EpochInterval
-> THKD ('PPGroups 'TechnicalGroup 'NoStakePoolGroup) f Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) f NonNegativeInterval
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) f UnitInterval
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) f UnitInterval
-> HKDNoUpdate f ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) f Coin
-> THKD ('PPGroups 'EconomicGroup 'SecurityGroup) f CoinPerByte
-> THKD ('PPGroups 'TechnicalGroup 'NoStakePoolGroup) f CostModels
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) f Prices
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) f OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) f OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) f Word32
-> THKD ('PPGroups 'TechnicalGroup 'NoStakePoolGroup) f Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) f Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) f PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) f DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) f Word16
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) f EpochInterval
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) f EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) f Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) f Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) f EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) f NonNegativeInterval
-> ConwayPParams f era
Ledger.ConwayPParams
(THKD ('PPGroups 'EconomicGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'EconomicGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word16
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD ('PPGroups 'EconomicGroup 'SecurityGroup) Identity Coin)
-> Gen
(THKD ('PPGroups 'EconomicGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word16
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (THKD ('PPGroups 'EconomicGroup 'SecurityGroup) Identity Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'EconomicGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word16
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD ('PPGroups 'EconomicGroup 'SecurityGroup) Identity Coin)
-> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word16
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (THKD ('PPGroups 'EconomicGroup 'SecurityGroup) Identity Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word16
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32)
-> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word16
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word16
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32)
-> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word16
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word16
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word16)
-> Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word16)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin)
-> Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin)
-> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
EpochInterval)
-> Gen
(THKD ('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
EpochInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16)
-> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
Identity
NonNegativeInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval
-> ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval)
-> Gen
(ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity UnitInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen ProtVer
-> Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen ProtVer
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte)
-> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'EconomicGroup 'SecurityGroup) Identity CoinPerByte)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels)
-> Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> (CostModels
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
HKD Identity CostModels
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels
forall (t :: PPGroups) (f :: * -> *) a. HKD f a -> THKD t f a
Ledger.THKD (CostModels
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels)
-> Gen CostModels
-> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity CostModels)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen CostModels
forall a. Arbitrary a => Gen a
arbitrary)
Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices)
-> Gen
(THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) Identity Prices)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits)
-> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity OrdExUnits)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits)
-> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity OrdExUnits)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32)
-> Gen
(THKD ('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (THKD ('PPGroups 'NetworkGroup 'SecurityGroup) Identity Word32)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16)
-> Gen
(THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) Identity Word16)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16)
-> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) Identity Word16)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds)
-> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
PoolVotingThresholds)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds)
-> Gen
(THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
Identity
DRepVotingThresholds)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16)
-> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Word16)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval)
-> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval)
-> Gen
(THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen (THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin)
-> Gen
(THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (THKD ('PPGroups 'GovGroup 'SecurityGroup) Identity Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen (THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin)
-> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) Identity Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) Identity EpochInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval
-> ConwayPParams Identity era)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval)
-> Gen (ConwayPParams Identity era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
Identity
NonNegativeInterval)
forall a. Arbitrary a => Gen a
arbitrary
shrink :: ConwayPParams Identity era -> [ConwayPParams Identity era]
shrink = ConwayPParams Identity era -> [ConwayPParams Identity era]
forall a.
(Generic a, RecursivelyShrink (Rep a), GSubterms (Rep a) a) =>
a -> [a]
genericShrink
instance Ledger.Era era => Arbitrary (Ledger.ConwayPParams Ledger.StrictMaybe era) where
arbitrary :: Gen (ConwayPParams StrictMaybe era)
arbitrary =
THKD ('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word16
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> HKDNoUpdate StrictMaybe ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era
THKD ('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word16
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era
forall (f :: * -> *) era.
THKD ('PPGroups 'EconomicGroup 'SecurityGroup) f Coin
-> THKD ('PPGroups 'EconomicGroup 'SecurityGroup) f Coin
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) f Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) f Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) f Word16
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) f Coin
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) f Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) f EpochInterval
-> THKD ('PPGroups 'TechnicalGroup 'NoStakePoolGroup) f Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) f NonNegativeInterval
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) f UnitInterval
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) f UnitInterval
-> HKDNoUpdate f ProtVer
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) f Coin
-> THKD ('PPGroups 'EconomicGroup 'SecurityGroup) f CoinPerByte
-> THKD ('PPGroups 'TechnicalGroup 'NoStakePoolGroup) f CostModels
-> THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) f Prices
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) f OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) f OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) f Word32
-> THKD ('PPGroups 'TechnicalGroup 'NoStakePoolGroup) f Word16
-> THKD ('PPGroups 'NetworkGroup 'NoStakePoolGroup) f Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) f PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) f DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) f Word16
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) f EpochInterval
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) f EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) f Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) f Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) f EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) f NonNegativeInterval
-> ConwayPParams f era
Ledger.ConwayPParams
(THKD ('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word16
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD ('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe Coin)
-> Gen
(THKD ('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word16
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen
(THKD ('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word16
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD ('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe Coin)
-> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word16
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD ('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word16
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32)
-> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word16
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word16
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32)
-> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word16
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word16
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word16)
-> Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word16)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin)
-> Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin)
-> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
EpochInterval
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
EpochInterval)
-> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
EpochInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16)
-> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
NonNegativeInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval
-> NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval)
-> Gen
(NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup)
StrictMaybe
UnitInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(NoUpdate ProtVer
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen (NoUpdate ProtVer)
-> Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> NoUpdate ProtVer -> Gen (NoUpdate ProtVer)
forall a. a -> Gen a
forall (f :: * -> *) a. Applicative f => a -> f a
pure NoUpdate ProtVer
forall a. NoUpdate a
NoUpdate
Gen
(THKD ('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte)
-> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'EconomicGroup 'SecurityGroup) StrictMaybe CoinPerByte)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
-> THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> (StrictMaybe CostModels
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
HKD StrictMaybe CostModels
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels
forall (t :: PPGroups) (f :: * -> *) a. HKD f a -> THKD t f a
Ledger.THKD (StrictMaybe CostModels
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels)
-> Gen (StrictMaybe CostModels)
-> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup)
StrictMaybe
CostModels)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [Gen (StrictMaybe CostModels)] -> Gen (StrictMaybe CostModels)
forall a. HasCallStack => [Gen a] -> Gen a
oneof [CostModels -> StrictMaybe CostModels
forall a. a -> StrictMaybe a
Ledger.SJust (CostModels -> StrictMaybe CostModels)
-> Gen CostModels -> Gen (StrictMaybe CostModels)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen CostModels
genValidAndUnknownCostModels, StrictMaybe CostModels -> Gen (StrictMaybe CostModels)
forall a. a -> Gen a
forall (f :: * -> *) a. Applicative f => a -> f a
pure StrictMaybe CostModels
forall a. StrictMaybe a
Ledger.SNothing])
Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices)
-> Gen
(THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'EconomicGroup 'NoStakePoolGroup) StrictMaybe Prices)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits
-> THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits)
-> Gen
(THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe OrdExUnits)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits
-> THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits)
-> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe OrdExUnits)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32
-> THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32)
-> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD ('PPGroups 'NetworkGroup 'SecurityGroup) StrictMaybe Word32)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16)
-> Gen
(THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'TechnicalGroup 'NoStakePoolGroup) StrictMaybe Word16)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16)
-> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'NetworkGroup 'NoStakePoolGroup) StrictMaybe Word16)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds)
-> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
PoolVotingThresholds)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds)
-> Gen
(THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup)
StrictMaybe
DRepVotingThresholds)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16)
-> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Word16)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval)
-> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval)
-> Gen
(THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin
-> THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen (THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin)
-> Gen
(THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (THKD ('PPGroups 'GovGroup 'SecurityGroup) StrictMaybe Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin
-> THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin)
-> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (THKD ('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe Coin)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval
-> THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'GovGroup 'NoStakePoolGroup) StrictMaybe EpochInterval)
forall a. Arbitrary a => Gen a
arbitrary
Gen
(THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval
-> ConwayPParams StrictMaybe era)
-> Gen
(THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval)
-> Gen (ConwayPParams StrictMaybe era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen
(THKD
('PPGroups 'EconomicGroup 'SecurityGroup)
StrictMaybe
NonNegativeInterval)
forall a. Arbitrary a => Gen a
arbitrary
shrink :: ConwayPParams StrictMaybe era -> [ConwayPParams StrictMaybe era]
shrink = ConwayPParams StrictMaybe era -> [ConwayPParams StrictMaybe era]
forall a.
(Generic a, RecursivelyShrink (Rep a), GSubterms (Rep a) a) =>
a -> [a]
genericShrink
instance Arbitrary Ledger.PoolVotingThresholds where
arbitrary :: Gen PoolVotingThresholds
arbitrary =
UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> PoolVotingThresholds
Ledger.PoolVotingThresholds
(UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> PoolVotingThresholds)
-> Gen UnitInterval
-> Gen
(UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> PoolVotingThresholds)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen
(UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> PoolVotingThresholds)
-> Gen UnitInterval
-> Gen
(UnitInterval
-> UnitInterval -> UnitInterval -> PoolVotingThresholds)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen
(UnitInterval
-> UnitInterval -> UnitInterval -> PoolVotingThresholds)
-> Gen UnitInterval
-> Gen (UnitInterval -> UnitInterval -> PoolVotingThresholds)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen (UnitInterval -> UnitInterval -> PoolVotingThresholds)
-> Gen UnitInterval -> Gen (UnitInterval -> PoolVotingThresholds)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen (UnitInterval -> PoolVotingThresholds)
-> Gen UnitInterval -> Gen PoolVotingThresholds
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
shrink :: PoolVotingThresholds -> [PoolVotingThresholds]
shrink = PoolVotingThresholds -> [PoolVotingThresholds]
forall a.
(Generic a, RecursivelyShrink (Rep a), GSubterms (Rep a) a) =>
a -> [a]
genericShrink
instance Arbitrary Ledger.DRepVotingThresholds where
arbitrary :: Gen DRepVotingThresholds
arbitrary =
UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> DRepVotingThresholds
Ledger.DRepVotingThresholds
(UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> DRepVotingThresholds)
-> Gen UnitInterval
-> Gen
(UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> DRepVotingThresholds)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen
(UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> DRepVotingThresholds)
-> Gen UnitInterval
-> Gen
(UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> DRepVotingThresholds)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen
(UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> DRepVotingThresholds)
-> Gen UnitInterval
-> Gen
(UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> DRepVotingThresholds)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen
(UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> DRepVotingThresholds)
-> Gen UnitInterval
-> Gen
(UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> DRepVotingThresholds)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen
(UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> DRepVotingThresholds)
-> Gen UnitInterval
-> Gen
(UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> DRepVotingThresholds)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen
(UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> DRepVotingThresholds)
-> Gen UnitInterval
-> Gen
(UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> DRepVotingThresholds)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen
(UnitInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> DRepVotingThresholds)
-> Gen UnitInterval
-> Gen
(UnitInterval
-> UnitInterval -> UnitInterval -> DRepVotingThresholds)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen
(UnitInterval
-> UnitInterval -> UnitInterval -> DRepVotingThresholds)
-> Gen UnitInterval
-> Gen (UnitInterval -> UnitInterval -> DRepVotingThresholds)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen (UnitInterval -> UnitInterval -> DRepVotingThresholds)
-> Gen UnitInterval -> Gen (UnitInterval -> DRepVotingThresholds)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
Gen (UnitInterval -> DRepVotingThresholds)
-> Gen UnitInterval -> Gen DRepVotingThresholds
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen UnitInterval
forall a. Arbitrary a => Gen a
arbitrary
shrink :: DRepVotingThresholds -> [DRepVotingThresholds]
shrink = DRepVotingThresholds -> [DRepVotingThresholds]
forall a.
(Generic a, RecursivelyShrink (Rep a), GSubterms (Rep a) a) =>
a -> [a]
genericShrink
instance Ledger.Era era => Arbitrary (Ledger.Constitution era) where
arbitrary :: Gen (Constitution era)
arbitrary = Anchor -> StrictMaybe ScriptHash -> Constitution era
forall era. Anchor -> StrictMaybe ScriptHash -> Constitution era
Ledger.Constitution (Anchor -> StrictMaybe ScriptHash -> Constitution era)
-> Gen Anchor -> Gen (StrictMaybe ScriptHash -> Constitution era)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen Anchor
forall a. Arbitrary a => Gen a
arbitrary Gen (StrictMaybe ScriptHash -> Constitution era)
-> Gen (StrictMaybe ScriptHash) -> Gen (Constitution era)
forall a b. Gen (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Gen (StrictMaybe ScriptHash)
forall a. Arbitrary a => Gen a
arbitrary
instance Arbitrary Alonzo.CostModel where
arbitrary :: Gen CostModel
arbitrary = [Language] -> Gen Language
forall a. HasCallStack => [a] -> Gen a
elements [Language]
Ledger.nonNativeLanguages Gen Language -> (Language -> Gen CostModel) -> Gen CostModel
forall a b. Gen a -> (a -> Gen b) -> Gen b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= Language -> Gen CostModel
genValidCostModel
instance Arbitrary Alonzo.CostModels where
arbitrary :: Gen CostModels
arbitrary = do
known <- Gen (Map Word8 [Int64])
genKnownCostModels
unknown <- genUnknownCostModels
let cms = Map Word8 [Int64]
known Map Word8 [Int64] -> Map Word8 [Int64] -> Map Word8 [Int64]
forall k a. Ord k => Map k a -> Map k a -> Map k a
`Map.union` Map Word8 [Int64]
unknown
pure . errorFail $ Ledger.mkCostModelsLenient cms
genValidCostModel :: Ledger.Language -> Gen Ledger.CostModel
genValidCostModel :: Language -> Gen CostModel
genValidCostModel Language
lang = do
newParamValues <- Int -> Gen Int64 -> Gen [Int64]
forall a. Int -> Gen a -> Gen [a]
vectorOf (Language -> Int
Ledger.costModelParamsCount Language
lang) Gen Int64
forall a. Arbitrary a => Gen a
arbitrary
either (\CostModelApplyError
err -> [Char] -> Gen CostModel
forall a. HasCallStack => [Char] -> a
error ([Char] -> Gen CostModel) -> [Char] -> Gen CostModel
forall a b. (a -> b) -> a -> b
$ [Char]
"Corrupt cost model: " [Char] -> [Char] -> [Char]
forall a. [a] -> [a] -> [a]
++ CostModelApplyError -> [Char]
forall a. Show a => a -> [Char]
show CostModelApplyError
err) pure $
Ledger.mkCostModel lang newParamValues
genValidCostModels :: Set Ledger.Language -> Gen L.CostModels
genValidCostModels :: Set Language -> Gen CostModels
genValidCostModels = (Map Language CostModel -> CostModels)
-> Gen (Map Language CostModel) -> Gen CostModels
forall a b. (a -> b) -> Gen a -> Gen b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap Map Language CostModel -> CostModels
Alonzo.mkCostModels (Gen (Map Language CostModel) -> Gen CostModels)
-> (Set Language -> Gen (Map Language CostModel))
-> Set Language
-> Gen CostModels
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Map Language (Gen CostModel) -> Gen (Map Language CostModel)
forall (t :: * -> *) (m :: * -> *) a.
(Traversable t, Monad m) =>
t (m a) -> m (t a)
forall (m :: * -> *) a.
Monad m =>
Map Language (m a) -> m (Map Language a)
sequence (Map Language (Gen CostModel) -> Gen (Map Language CostModel))
-> (Set Language -> Map Language (Gen CostModel))
-> Set Language
-> Gen (Map Language CostModel)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Language -> Gen CostModel)
-> Set Language -> Map Language (Gen CostModel)
forall k a. (k -> a) -> Set k -> Map k a
Map.fromSet Language -> Gen CostModel
genValidCostModel
genValidAndUnknownCostModels :: Gen L.CostModels
genValidAndUnknownCostModels :: Gen CostModels
genValidAndUnknownCostModels = do
langs <- [Language] -> Gen [Language]
forall a. [a] -> Gen [a]
sublistOf [Language]
Ledger.nonNativeLanguages
validCms <- genValidCostModels $ Set.fromList langs
unknownCms <- errorFail . Ledger.mkCostModelsLenient <$> genUnknownCostModels
pure $ Ledger.updateCostModels validCms unknownCms
genUnknownCostModels :: Gen (Map.Map Word8 [Int64])
genUnknownCostModels :: Gen (Map Word8 [Int64])
genUnknownCostModels = [(Word8, [Int64])] -> Map Word8 [Int64]
forall k a. Ord k => [(k, a)] -> Map k a
Map.fromList ([(Word8, [Int64])] -> Map Word8 [Int64])
-> Gen [(Word8, [Int64])] -> Gen (Map Word8 [Int64])
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Gen (Word8, [Int64]) -> Gen [(Word8, [Int64])]
forall a. Gen a -> Gen [a]
listOf Gen (Word8, [Int64])
genUnknownCostModelValues
genUnknownCostModelValues :: Gen (Word8, [Int64])
genUnknownCostModelValues :: Gen (Word8, [Int64])
genUnknownCostModelValues = do
lang <- (Int, Int) -> Gen Int
chooseInt (Int
firstInvalid, Word8 -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Word8
forall a. Bounded a => a
maxBound :: Word8))
vs <- arbitrary
return (fromIntegral . fromEnum $ lang, vs)
where
firstInvalid :: Int
firstInvalid = Language -> Int
forall a. Enum a => a -> Int
fromEnum (Language
forall a. Bounded a => a
maxBound :: Ledger.Language) Int -> Int -> Int
forall a. Num a => a -> a -> a
+ Int
1
genKnownCostModels :: Gen (Map.Map Word8 [Int64])
genKnownCostModels :: Gen (Map Word8 [Int64])
genKnownCostModels = do
langs <- [Language] -> Gen [Language]
forall a. [a] -> Gen [a]
sublistOf [Language]
L.nonNativeLanguages
cms <- mapM genCostModelValues langs
return $ Map.fromList cms
genCostModelValues :: L.Language -> Gen (Word8, [Int64])
genCostModelValues :: Language -> Gen (Word8, [Int64])
genCostModelValues Language
lang = do
Positive sub <- Gen (Positive Int)
forall a. Arbitrary a => Gen a
arbitrary
(,) lang'
<$> oneof
[ listAtLeast (Ledger.costModelParamsCount lang)
, take (tooFew sub) <$> arbitrary
]
where
lang' :: Word8
lang' = Int -> Word8
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Language -> Int
forall a. Enum a => a -> Int
fromEnum Language
lang)
tooFew :: Int -> Int
tooFew Int
sub = Language -> Int
Ledger.costModelParamsCount Language
lang Int -> Int -> Int
forall a. Num a => a -> a -> a
- Int
sub
listAtLeast :: Int -> Gen [Int64]
listAtLeast :: Int -> Gen [Int64]
listAtLeast Int
x = do
NonNegative y <- Gen (NonNegative Int)
forall a. Arbitrary a => Gen a
arbitrary
replicateM (x + y) arbitrary
obtainArbitraryConstraints
:: ShelleyBasedEra era
-> ( ( Arbitrary (ShelleyPParams Identity (ShelleyLedgerEra era))
, Arbitrary (L.VotingProcedures (ShelleyLedgerEra era))
, Arbitrary (L.ProposalProcedure (ShelleyLedgerEra era))
)
=> a
)
-> a
obtainArbitraryConstraints :: forall era a.
ShelleyBasedEra era
-> ((Arbitrary (ShelleyPParams Identity (ShelleyLedgerEra era)),
Arbitrary (VotingProcedures (ShelleyLedgerEra era)),
Arbitrary (ProposalProcedure (ShelleyLedgerEra era))) =>
a)
-> a
obtainArbitraryConstraints ShelleyBasedEra era
era (Arbitrary (ShelleyPParams Identity (ShelleyLedgerEra era)),
Arbitrary (VotingProcedures (ShelleyLedgerEra era)),
Arbitrary (ProposalProcedure (ShelleyLedgerEra era))) =>
a
f = case ShelleyBasedEra era
era of
ShelleyBasedEra era
ShelleyBasedEraShelley -> a
(Arbitrary (ShelleyPParams Identity (ShelleyLedgerEra era)),
Arbitrary (VotingProcedures (ShelleyLedgerEra era)),
Arbitrary (ProposalProcedure (ShelleyLedgerEra era))) =>
a
f
ShelleyBasedEra era
ShelleyBasedEraAllegra -> a
(Arbitrary (ShelleyPParams Identity (ShelleyLedgerEra era)),
Arbitrary (VotingProcedures (ShelleyLedgerEra era)),
Arbitrary (ProposalProcedure (ShelleyLedgerEra era))) =>
a
f
ShelleyBasedEra era
ShelleyBasedEraMary -> a
(Arbitrary (ShelleyPParams Identity (ShelleyLedgerEra era)),
Arbitrary (VotingProcedures (ShelleyLedgerEra era)),
Arbitrary (ProposalProcedure (ShelleyLedgerEra era))) =>
a
f
ShelleyBasedEra era
ShelleyBasedEraAlonzo -> a
(Arbitrary (ShelleyPParams Identity (ShelleyLedgerEra era)),
Arbitrary (VotingProcedures (ShelleyLedgerEra era)),
Arbitrary (ProposalProcedure (ShelleyLedgerEra era))) =>
a
f
ShelleyBasedEra era
ShelleyBasedEraBabbage -> a
(Arbitrary (ShelleyPParams Identity (ShelleyLedgerEra era)),
Arbitrary (VotingProcedures (ShelleyLedgerEra era)),
Arbitrary (ProposalProcedure (ShelleyLedgerEra era))) =>
a
f
ShelleyBasedEra era
ShelleyBasedEraConway -> a
(Arbitrary (ShelleyPParams Identity (ShelleyLedgerEra era)),
Arbitrary (VotingProcedures (ShelleyLedgerEra era)),
Arbitrary (ProposalProcedure (ShelleyLedgerEra era))) =>
a
f