{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeApplications #-}

module Ouroboros.Consensus.Shelley.Ledger.Query.LegacyPParams
  ( LegacyPParams (..)
  , decodeLegacyPParams
  , encodeLegacyPParams
  ) where

import Cardano.Ledger.Allegra
import Cardano.Ledger.Alonzo
import Cardano.Ledger.Alonzo.PParams
import Cardano.Ledger.Babbage
import Cardano.Ledger.Babbage.PParams
import Cardano.Ledger.BaseTypes
import Cardano.Ledger.Binary
import Cardano.Ledger.Binary.Coders
import qualified Cardano.Ledger.Binary.Plain as Plain
import Cardano.Ledger.Conway
import Cardano.Ledger.Core
import Cardano.Ledger.Dijkstra
import Cardano.Ledger.Mary
import Cardano.Ledger.Shelley
import Cardano.Ledger.Shelley.PParams
import Data.Functor.Identity

-- | After node 10.5, Ledger started encoding the protocol version in a TList
-- instead of as two contiguous terms. These codecs respect the old version.
--
-- This can be deleted once we cross a hard fork.
newtype LegacyPParams era = LegacyPParams
  { forall era. LegacyPParams era -> PParams era
unLegacyPParams :: PParams era
  }

encodeLegacyPParams :: ToCBOR (LegacyPParams era) => PParams era -> Plain.Encoding
encodeLegacyPParams :: forall era. ToCBOR (LegacyPParams era) => PParams era -> Encoding
encodeLegacyPParams PParams era
pp = LegacyPParams era -> Encoding
forall a. ToCBOR a => a -> Encoding
toCBOR (PParams era -> LegacyPParams era
forall era. PParams era -> LegacyPParams era
LegacyPParams PParams era
pp)

decodeLegacyPParams :: FromCBOR (LegacyPParams era) => Plain.Decoder s (PParams era)
decodeLegacyPParams :: forall era s.
FromCBOR (LegacyPParams era) =>
Decoder s (PParams era)
decodeLegacyPParams = LegacyPParams era -> PParams era
forall era. LegacyPParams era -> PParams era
unLegacyPParams (LegacyPParams era -> PParams era)
-> Decoder s (LegacyPParams era) -> Decoder s (PParams era)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Decoder s (LegacyPParams era)
forall s. Decoder s (LegacyPParams era)
forall a s. FromCBOR a => Decoder s a
fromCBOR

instance ToCBOR (LegacyPParams ShelleyEra) where
  toCBOR :: LegacyPParams ShelleyEra -> Encoding
toCBOR = forall era t. (Era era, EncCBOR t) => t -> Encoding
toEraCBOR @ShelleyEra

instance EncCBOR (LegacyPParams ShelleyEra) where
  encCBOR :: LegacyPParams ShelleyEra -> Encoding
encCBOR (LegacyPParams (PParams ShelleyPParams{HKD Identity Word16
HKD Identity Word32
HKD Identity Coin
HKD Identity EpochInterval
HKD Identity Nonce
HKD Identity UnitInterval
HKD Identity NonNegativeInterval
HKD Identity ProtVer
sppMinFeeA :: HKD Identity Coin
sppMinFeeB :: HKD Identity Coin
sppMaxBBSize :: HKD Identity Word32
sppMaxTxSize :: HKD Identity Word32
sppMaxBHSize :: HKD Identity Word16
sppKeyDeposit :: HKD Identity Coin
sppPoolDeposit :: HKD Identity Coin
sppEMax :: HKD Identity EpochInterval
sppNOpt :: HKD Identity Word16
sppA0 :: HKD Identity NonNegativeInterval
sppRho :: HKD Identity UnitInterval
sppTau :: HKD Identity UnitInterval
sppD :: HKD Identity UnitInterval
sppExtraEntropy :: HKD Identity Nonce
sppProtocolVersion :: HKD Identity ProtVer
sppMinUTxOValue :: HKD Identity Coin
sppMinPoolCost :: HKD Identity Coin
sppMinPoolCost :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Coin
sppMinUTxOValue :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Coin
sppProtocolVersion :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f ProtVer
sppExtraEntropy :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Nonce
sppD :: forall (f :: * -> *) era.
ShelleyPParams f era -> HKD f UnitInterval
sppTau :: forall (f :: * -> *) era.
ShelleyPParams f era -> HKD f UnitInterval
sppRho :: forall (f :: * -> *) era.
ShelleyPParams f era -> HKD f UnitInterval
sppA0 :: forall (f :: * -> *) era.
ShelleyPParams f era -> HKD f NonNegativeInterval
sppNOpt :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Word16
sppEMax :: forall (f :: * -> *) era.
ShelleyPParams f era -> HKD f EpochInterval
sppPoolDeposit :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Coin
sppKeyDeposit :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Coin
sppMaxBHSize :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Word16
sppMaxTxSize :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Word32
sppMaxBBSize :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Word32
sppMinFeeB :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Coin
sppMinFeeA :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Coin
..})) =
    Encode ('Closed 'Dense) (LegacyPParams ShelleyEra) -> Encoding
forall (w :: Wrapped) t. Encode w t -> Encoding
encode
      ( (Coin
 -> Coin
 -> Word32
 -> Word32
 -> Word16
 -> Coin
 -> Coin
 -> EpochInterval
 -> Word16
 -> NonNegativeInterval
 -> UnitInterval
 -> UnitInterval
 -> UnitInterval
 -> Nonce
 -> Version
 -> Natural
 -> Coin
 -> Coin
 -> LegacyPParams ShelleyEra)
-> Encode
     ('Closed 'Dense)
     (Coin
      -> Coin
      -> Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall t. t -> Encode ('Closed 'Dense) t
Rec Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> Version
-> Natural
-> Coin
-> Coin
-> LegacyPParams ShelleyEra
mkLegacyShelleyPParams
          Encode
  ('Closed 'Dense)
  (Coin
   -> Coin
   -> Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (Coin
      -> Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
sppMinFeeA
          Encode
  ('Closed 'Dense)
  (Coin
   -> Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
sppMinFeeB
          Encode
  ('Closed 'Dense)
  (Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Encode ('Closed 'Dense) Word32
-> Encode
     ('Closed 'Dense)
     (Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Word32 -> Encode ('Closed 'Dense) Word32
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Word32
HKD Identity Word32
sppMaxBBSize
          Encode
  ('Closed 'Dense)
  (Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Encode ('Closed 'Dense) Word32
-> Encode
     ('Closed 'Dense)
     (Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Word32 -> Encode ('Closed 'Dense) Word32
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Word32
HKD Identity Word32
sppMaxTxSize
          Encode
  ('Closed 'Dense)
  (Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Encode ('Closed 'Dense) Word16
-> Encode
     ('Closed 'Dense)
     (Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Word16 -> Encode ('Closed 'Dense) Word16
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Word16
HKD Identity Word16
sppMaxBHSize
          Encode
  ('Closed 'Dense)
  (Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
sppKeyDeposit
          Encode
  ('Closed 'Dense)
  (Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
sppPoolDeposit
          Encode
  ('Closed 'Dense)
  (EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Encode ('Closed 'Dense) EpochInterval
-> Encode
     ('Closed 'Dense)
     (Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> EpochInterval -> Encode ('Closed 'Dense) EpochInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To EpochInterval
HKD Identity EpochInterval
sppEMax
          Encode
  ('Closed 'Dense)
  (Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Encode ('Closed 'Dense) Word16
-> Encode
     ('Closed 'Dense)
     (NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Word16 -> Encode ('Closed 'Dense) Word16
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Word16
HKD Identity Word16
sppNOpt
          Encode
  ('Closed 'Dense)
  (NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Encode ('Closed 'Dense) NonNegativeInterval
-> Encode
     ('Closed 'Dense)
     (UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> NonNegativeInterval -> Encode ('Closed 'Dense) NonNegativeInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity NonNegativeInterval
NonNegativeInterval
sppA0
          Encode
  ('Closed 'Dense)
  (UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Encode ('Closed 'Dense) UnitInterval
-> Encode
     ('Closed 'Dense)
     (UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> UnitInterval -> Encode ('Closed 'Dense) UnitInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity UnitInterval
UnitInterval
sppRho
          Encode
  ('Closed 'Dense)
  (UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Encode ('Closed 'Dense) UnitInterval
-> Encode
     ('Closed 'Dense)
     (UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> UnitInterval -> Encode ('Closed 'Dense) UnitInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity UnitInterval
UnitInterval
sppTau
          Encode
  ('Closed 'Dense)
  (UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Encode ('Closed 'Dense) UnitInterval
-> Encode
     ('Closed 'Dense)
     (Nonce
      -> Version -> Natural -> Coin -> Coin -> LegacyPParams ShelleyEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> UnitInterval -> Encode ('Closed 'Dense) UnitInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity UnitInterval
UnitInterval
sppD
          Encode
  ('Closed 'Dense)
  (Nonce
   -> Version -> Natural -> Coin -> Coin -> LegacyPParams ShelleyEra)
-> Encode ('Closed 'Dense) Nonce
-> Encode
     ('Closed 'Dense)
     (Version -> Natural -> Coin -> Coin -> LegacyPParams ShelleyEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Nonce -> Encode ('Closed 'Dense) Nonce
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity Nonce
Nonce
sppExtraEntropy
          Encode
  ('Closed 'Dense)
  (Version -> Natural -> Coin -> Coin -> LegacyPParams ShelleyEra)
-> Encode ('Closed 'Dense) Version
-> Encode
     ('Closed 'Dense)
     (Natural -> Coin -> Coin -> LegacyPParams ShelleyEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Version -> Encode ('Closed 'Dense) Version
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To (ProtVer -> Version
pvMajor HKD Identity ProtVer
ProtVer
sppProtocolVersion)
          Encode
  ('Closed 'Dense)
  (Natural -> Coin -> Coin -> LegacyPParams ShelleyEra)
-> Encode ('Closed 'Dense) Natural
-> Encode
     ('Closed 'Dense) (Coin -> Coin -> LegacyPParams ShelleyEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Natural -> Encode ('Closed 'Dense) Natural
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To (ProtVer -> Natural
pvMinor HKD Identity ProtVer
ProtVer
sppProtocolVersion)
          Encode ('Closed 'Dense) (Coin -> Coin -> LegacyPParams ShelleyEra)
-> Encode ('Closed 'Dense) Coin
-> Encode ('Closed 'Dense) (Coin -> LegacyPParams ShelleyEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
sppMinUTxOValue
          Encode ('Closed 'Dense) (Coin -> LegacyPParams ShelleyEra)
-> Encode ('Closed 'Dense) Coin
-> Encode ('Closed 'Dense) (LegacyPParams ShelleyEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
sppMinPoolCost
      )
   where
    mkLegacyShelleyPParams :: Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> Version
-> Natural
-> Coin
-> Coin
-> LegacyPParams ShelleyEra
mkLegacyShelleyPParams Coin
a Coin
b Word32
c Word32
d Word16
e Coin
f Coin
g EpochInterval
h Word16
i NonNegativeInterval
j UnitInterval
k UnitInterval
l UnitInterval
m Nonce
n Version
o Natural
p Coin
q Coin
r =
      PParams ShelleyEra -> LegacyPParams ShelleyEra
forall era. PParams era -> LegacyPParams era
LegacyPParams (PParams ShelleyEra -> LegacyPParams ShelleyEra)
-> PParams ShelleyEra -> LegacyPParams ShelleyEra
forall a b. (a -> b) -> a -> b
$
        PParamsHKD Identity ShelleyEra -> PParams ShelleyEra
forall era. PParamsHKD Identity era -> PParams era
PParams (PParamsHKD Identity ShelleyEra -> PParams ShelleyEra)
-> PParamsHKD Identity ShelleyEra -> PParams ShelleyEra
forall a b. (a -> b) -> a -> b
$
          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 Coin
-> ShelleyPParams f era
ShelleyPParams @Identity @ShelleyEra Coin
HKD Identity Coin
a Coin
HKD Identity Coin
b Word32
HKD Identity Word32
c Word32
HKD Identity Word32
d Word16
HKD Identity Word16
e Coin
HKD Identity Coin
f Coin
HKD Identity Coin
g EpochInterval
HKD Identity EpochInterval
h Word16
HKD Identity Word16
i HKD Identity NonNegativeInterval
NonNegativeInterval
j HKD Identity UnitInterval
UnitInterval
k HKD Identity UnitInterval
UnitInterval
l HKD Identity UnitInterval
UnitInterval
m HKD Identity Nonce
Nonce
n (Version -> Natural -> ProtVer
ProtVer Version
o Natural
p) Coin
HKD Identity Coin
q Coin
HKD Identity Coin
r

instance DecCBOR (LegacyPParams ShelleyEra) where
  decCBOR :: forall s. Decoder s (LegacyPParams ShelleyEra)
decCBOR =
    Decode ('Closed 'Dense) (LegacyPParams ShelleyEra)
-> Decoder s (LegacyPParams ShelleyEra)
forall t (w :: Wrapped) s. Typeable t => Decode w t -> Decoder s t
decode
      ( (Coin
 -> Coin
 -> Word32
 -> Word32
 -> Word16
 -> Coin
 -> Coin
 -> EpochInterval
 -> Word16
 -> NonNegativeInterval
 -> UnitInterval
 -> UnitInterval
 -> UnitInterval
 -> Nonce
 -> Version
 -> Natural
 -> Coin
 -> Coin
 -> LegacyPParams ShelleyEra)
-> Decode
     ('Closed 'Dense)
     (Coin
      -> Coin
      -> Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall t. t -> Decode ('Closed 'Dense) t
RecD Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> Version
-> Natural
-> Coin
-> Coin
-> LegacyPParams ShelleyEra
mkLegacyShelleyPParams
          Decode
  ('Closed 'Dense)
  (Coin
   -> Coin
   -> Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Decode ('Closed (ZonkAny 101)) Coin
-> Decode
     ('Closed 'Dense)
     (Coin
      -> Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 101)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMinFeeA
          Decode
  ('Closed 'Dense)
  (Coin
   -> Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Decode ('Closed (ZonkAny 100)) Coin
-> Decode
     ('Closed 'Dense)
     (Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 100)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMinFeeB
          Decode
  ('Closed 'Dense)
  (Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Decode ('Closed (ZonkAny 99)) Word32
-> Decode
     ('Closed 'Dense)
     (Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 99)) Word32
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMaxBBSize
          Decode
  ('Closed 'Dense)
  (Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Decode ('Closed (ZonkAny 98)) Word32
-> Decode
     ('Closed 'Dense)
     (Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 98)) Word32
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMaxTxSize
          Decode
  ('Closed 'Dense)
  (Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Decode ('Closed (ZonkAny 97)) Word16
-> Decode
     ('Closed 'Dense)
     (Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 97)) Word16
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMaxBHSize
          Decode
  ('Closed 'Dense)
  (Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Decode ('Closed (ZonkAny 96)) Coin
-> Decode
     ('Closed 'Dense)
     (Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 96)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppKeyDeposit
          Decode
  ('Closed 'Dense)
  (Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Decode ('Closed (ZonkAny 95)) Coin
-> Decode
     ('Closed 'Dense)
     (EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 95)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppPoolDeposit
          Decode
  ('Closed 'Dense)
  (EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Decode ('Closed (ZonkAny 94)) EpochInterval
-> Decode
     ('Closed 'Dense)
     (Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 94)) EpochInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppEMax
          Decode
  ('Closed 'Dense)
  (Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Decode ('Closed (ZonkAny 93)) Word16
-> Decode
     ('Closed 'Dense)
     (NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 93)) Word16
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppNOpt
          Decode
  ('Closed 'Dense)
  (NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Decode ('Closed (ZonkAny 92)) NonNegativeInterval
-> Decode
     ('Closed 'Dense)
     (UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 92)) NonNegativeInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppA0
          Decode
  ('Closed 'Dense)
  (UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Decode ('Closed (ZonkAny 91)) UnitInterval
-> Decode
     ('Closed 'Dense)
     (UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 91)) UnitInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppRho
          Decode
  ('Closed 'Dense)
  (UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Decode ('Closed (ZonkAny 90)) UnitInterval
-> Decode
     ('Closed 'Dense)
     (UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams ShelleyEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 90)) UnitInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppTau
          Decode
  ('Closed 'Dense)
  (UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams ShelleyEra)
-> Decode ('Closed (ZonkAny 89)) UnitInterval
-> Decode
     ('Closed 'Dense)
     (Nonce
      -> Version -> Natural -> Coin -> Coin -> LegacyPParams ShelleyEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 89)) UnitInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppD
          Decode
  ('Closed 'Dense)
  (Nonce
   -> Version -> Natural -> Coin -> Coin -> LegacyPParams ShelleyEra)
-> Decode ('Closed (ZonkAny 88)) Nonce
-> Decode
     ('Closed 'Dense)
     (Version -> Natural -> Coin -> Coin -> LegacyPParams ShelleyEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 88)) Nonce
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppExtraEntropy
          Decode
  ('Closed 'Dense)
  (Version -> Natural -> Coin -> Coin -> LegacyPParams ShelleyEra)
-> Decode ('Closed (ZonkAny 87)) Version
-> Decode
     ('Closed 'Dense)
     (Natural -> Coin -> Coin -> LegacyPParams ShelleyEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 87)) Version
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- (pvMajor sppProtocolVersion)
          Decode
  ('Closed 'Dense)
  (Natural -> Coin -> Coin -> LegacyPParams ShelleyEra)
-> Decode ('Closed (ZonkAny 86)) Natural
-> Decode
     ('Closed 'Dense) (Coin -> Coin -> LegacyPParams ShelleyEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 86)) Natural
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- (pvMinor sppProtocolVersion)
          Decode ('Closed 'Dense) (Coin -> Coin -> LegacyPParams ShelleyEra)
-> Decode ('Closed (ZonkAny 85)) Coin
-> Decode ('Closed 'Dense) (Coin -> LegacyPParams ShelleyEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 85)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMinUTxOValue
          Decode ('Closed 'Dense) (Coin -> LegacyPParams ShelleyEra)
-> Decode ('Closed (ZonkAny 84)) Coin
-> Decode ('Closed 'Dense) (LegacyPParams ShelleyEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 84)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMinPoolCost
      )
   where
    mkLegacyShelleyPParams :: Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> Version
-> Natural
-> Coin
-> Coin
-> LegacyPParams ShelleyEra
mkLegacyShelleyPParams Coin
a Coin
b Word32
c Word32
d Word16
e Coin
f Coin
g EpochInterval
h Word16
i NonNegativeInterval
j UnitInterval
k UnitInterval
l UnitInterval
m Nonce
n Version
o Natural
p Coin
q Coin
r =
      PParams ShelleyEra -> LegacyPParams ShelleyEra
forall era. PParams era -> LegacyPParams era
LegacyPParams (PParams ShelleyEra -> LegacyPParams ShelleyEra)
-> PParams ShelleyEra -> LegacyPParams ShelleyEra
forall a b. (a -> b) -> a -> b
$
        PParamsHKD Identity ShelleyEra -> PParams ShelleyEra
forall era. PParamsHKD Identity era -> PParams era
PParams (PParamsHKD Identity ShelleyEra -> PParams ShelleyEra)
-> PParamsHKD Identity ShelleyEra -> PParams ShelleyEra
forall a b. (a -> b) -> a -> b
$
          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 Coin
-> ShelleyPParams f era
ShelleyPParams @Identity @ShelleyEra Coin
HKD Identity Coin
a Coin
HKD Identity Coin
b Word32
HKD Identity Word32
c Word32
HKD Identity Word32
d Word16
HKD Identity Word16
e Coin
HKD Identity Coin
f Coin
HKD Identity Coin
g EpochInterval
HKD Identity EpochInterval
h Word16
HKD Identity Word16
i HKD Identity NonNegativeInterval
NonNegativeInterval
j HKD Identity UnitInterval
UnitInterval
k HKD Identity UnitInterval
UnitInterval
l HKD Identity UnitInterval
UnitInterval
m HKD Identity Nonce
Nonce
n (Version -> Natural -> ProtVer
ProtVer Version
o Natural
p) Coin
HKD Identity Coin
q Coin
HKD Identity Coin
r

instance FromCBOR (LegacyPParams ShelleyEra) where
  fromCBOR :: forall s. Decoder s (LegacyPParams ShelleyEra)
fromCBOR = forall era t s. (Era era, DecCBOR t) => Decoder s t
fromEraCBOR @ShelleyEra

instance ToCBOR (LegacyPParams AllegraEra) where
  toCBOR :: LegacyPParams AllegraEra -> Encoding
toCBOR (LegacyPParams (PParams ShelleyPParams{HKD Identity Word16
HKD Identity Word32
HKD Identity Coin
HKD Identity EpochInterval
HKD Identity Nonce
HKD Identity UnitInterval
HKD Identity NonNegativeInterval
HKD Identity ProtVer
sppMinPoolCost :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Coin
sppMinUTxOValue :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Coin
sppProtocolVersion :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f ProtVer
sppExtraEntropy :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Nonce
sppD :: forall (f :: * -> *) era.
ShelleyPParams f era -> HKD f UnitInterval
sppTau :: forall (f :: * -> *) era.
ShelleyPParams f era -> HKD f UnitInterval
sppRho :: forall (f :: * -> *) era.
ShelleyPParams f era -> HKD f UnitInterval
sppA0 :: forall (f :: * -> *) era.
ShelleyPParams f era -> HKD f NonNegativeInterval
sppNOpt :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Word16
sppEMax :: forall (f :: * -> *) era.
ShelleyPParams f era -> HKD f EpochInterval
sppPoolDeposit :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Coin
sppKeyDeposit :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Coin
sppMaxBHSize :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Word16
sppMaxTxSize :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Word32
sppMaxBBSize :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Word32
sppMinFeeB :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Coin
sppMinFeeA :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Coin
sppMinFeeA :: HKD Identity Coin
sppMinFeeB :: HKD Identity Coin
sppMaxBBSize :: HKD Identity Word32
sppMaxTxSize :: HKD Identity Word32
sppMaxBHSize :: HKD Identity Word16
sppKeyDeposit :: HKD Identity Coin
sppPoolDeposit :: HKD Identity Coin
sppEMax :: HKD Identity EpochInterval
sppNOpt :: HKD Identity Word16
sppA0 :: HKD Identity NonNegativeInterval
sppRho :: HKD Identity UnitInterval
sppTau :: HKD Identity UnitInterval
sppD :: HKD Identity UnitInterval
sppExtraEntropy :: HKD Identity Nonce
sppProtocolVersion :: HKD Identity ProtVer
sppMinUTxOValue :: HKD Identity Coin
sppMinPoolCost :: HKD Identity Coin
..})) =
    Version -> Encoding -> Encoding
toPlainEncoding (forall era. Era era => Version
eraProtVerLow @AllegraEra) (Encoding -> Encoding) -> Encoding -> Encoding
forall a b. (a -> b) -> a -> b
$
      Encode ('Closed 'Dense) (LegacyPParams AllegraEra) -> Encoding
forall (w :: Wrapped) t. Encode w t -> Encoding
encode
        ( (Coin
 -> Coin
 -> Word32
 -> Word32
 -> Word16
 -> Coin
 -> Coin
 -> EpochInterval
 -> Word16
 -> NonNegativeInterval
 -> UnitInterval
 -> UnitInterval
 -> UnitInterval
 -> Nonce
 -> Version
 -> Natural
 -> Coin
 -> Coin
 -> LegacyPParams AllegraEra)
-> Encode
     ('Closed 'Dense)
     (Coin
      -> Coin
      -> Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall t. t -> Encode ('Closed 'Dense) t
Rec Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> Version
-> Natural
-> Coin
-> Coin
-> LegacyPParams AllegraEra
mkLegacyAllegraPParams
            Encode
  ('Closed 'Dense)
  (Coin
   -> Coin
   -> Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (Coin
      -> Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
sppMinFeeA
            Encode
  ('Closed 'Dense)
  (Coin
   -> Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
sppMinFeeB
            Encode
  ('Closed 'Dense)
  (Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Encode ('Closed 'Dense) Word32
-> Encode
     ('Closed 'Dense)
     (Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Word32 -> Encode ('Closed 'Dense) Word32
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Word32
HKD Identity Word32
sppMaxBBSize
            Encode
  ('Closed 'Dense)
  (Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Encode ('Closed 'Dense) Word32
-> Encode
     ('Closed 'Dense)
     (Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Word32 -> Encode ('Closed 'Dense) Word32
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Word32
HKD Identity Word32
sppMaxTxSize
            Encode
  ('Closed 'Dense)
  (Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Encode ('Closed 'Dense) Word16
-> Encode
     ('Closed 'Dense)
     (Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Word16 -> Encode ('Closed 'Dense) Word16
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Word16
HKD Identity Word16
sppMaxBHSize
            Encode
  ('Closed 'Dense)
  (Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
sppKeyDeposit
            Encode
  ('Closed 'Dense)
  (Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
sppPoolDeposit
            Encode
  ('Closed 'Dense)
  (EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Encode ('Closed 'Dense) EpochInterval
-> Encode
     ('Closed 'Dense)
     (Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> EpochInterval -> Encode ('Closed 'Dense) EpochInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To EpochInterval
HKD Identity EpochInterval
sppEMax
            Encode
  ('Closed 'Dense)
  (Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Encode ('Closed 'Dense) Word16
-> Encode
     ('Closed 'Dense)
     (NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Word16 -> Encode ('Closed 'Dense) Word16
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Word16
HKD Identity Word16
sppNOpt
            Encode
  ('Closed 'Dense)
  (NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Encode ('Closed 'Dense) NonNegativeInterval
-> Encode
     ('Closed 'Dense)
     (UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> NonNegativeInterval -> Encode ('Closed 'Dense) NonNegativeInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity NonNegativeInterval
NonNegativeInterval
sppA0
            Encode
  ('Closed 'Dense)
  (UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Encode ('Closed 'Dense) UnitInterval
-> Encode
     ('Closed 'Dense)
     (UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> UnitInterval -> Encode ('Closed 'Dense) UnitInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity UnitInterval
UnitInterval
sppRho
            Encode
  ('Closed 'Dense)
  (UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Encode ('Closed 'Dense) UnitInterval
-> Encode
     ('Closed 'Dense)
     (UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> UnitInterval -> Encode ('Closed 'Dense) UnitInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity UnitInterval
UnitInterval
sppTau
            Encode
  ('Closed 'Dense)
  (UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Encode ('Closed 'Dense) UnitInterval
-> Encode
     ('Closed 'Dense)
     (Nonce
      -> Version -> Natural -> Coin -> Coin -> LegacyPParams AllegraEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> UnitInterval -> Encode ('Closed 'Dense) UnitInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity UnitInterval
UnitInterval
sppD
            Encode
  ('Closed 'Dense)
  (Nonce
   -> Version -> Natural -> Coin -> Coin -> LegacyPParams AllegraEra)
-> Encode ('Closed 'Dense) Nonce
-> Encode
     ('Closed 'Dense)
     (Version -> Natural -> Coin -> Coin -> LegacyPParams AllegraEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Nonce -> Encode ('Closed 'Dense) Nonce
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity Nonce
Nonce
sppExtraEntropy
            Encode
  ('Closed 'Dense)
  (Version -> Natural -> Coin -> Coin -> LegacyPParams AllegraEra)
-> Encode ('Closed 'Dense) Version
-> Encode
     ('Closed 'Dense)
     (Natural -> Coin -> Coin -> LegacyPParams AllegraEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Version -> Encode ('Closed 'Dense) Version
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To (ProtVer -> Version
pvMajor HKD Identity ProtVer
ProtVer
sppProtocolVersion)
            Encode
  ('Closed 'Dense)
  (Natural -> Coin -> Coin -> LegacyPParams AllegraEra)
-> Encode ('Closed 'Dense) Natural
-> Encode
     ('Closed 'Dense) (Coin -> Coin -> LegacyPParams AllegraEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Natural -> Encode ('Closed 'Dense) Natural
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To (ProtVer -> Natural
pvMinor HKD Identity ProtVer
ProtVer
sppProtocolVersion)
            Encode ('Closed 'Dense) (Coin -> Coin -> LegacyPParams AllegraEra)
-> Encode ('Closed 'Dense) Coin
-> Encode ('Closed 'Dense) (Coin -> LegacyPParams AllegraEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
sppMinUTxOValue
            Encode ('Closed 'Dense) (Coin -> LegacyPParams AllegraEra)
-> Encode ('Closed 'Dense) Coin
-> Encode ('Closed 'Dense) (LegacyPParams AllegraEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
sppMinPoolCost
        )
   where
    mkLegacyAllegraPParams :: Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> Version
-> Natural
-> Coin
-> Coin
-> LegacyPParams AllegraEra
mkLegacyAllegraPParams Coin
a Coin
b Word32
c Word32
d Word16
e Coin
f Coin
g EpochInterval
h Word16
i NonNegativeInterval
j UnitInterval
k UnitInterval
l UnitInterval
m Nonce
n Version
o Natural
p Coin
q Coin
r =
      PParams AllegraEra -> LegacyPParams AllegraEra
forall era. PParams era -> LegacyPParams era
LegacyPParams (PParams AllegraEra -> LegacyPParams AllegraEra)
-> PParams AllegraEra -> LegacyPParams AllegraEra
forall a b. (a -> b) -> a -> b
$
        PParamsHKD Identity AllegraEra -> PParams AllegraEra
forall era. PParamsHKD Identity era -> PParams era
PParams (PParamsHKD Identity AllegraEra -> PParams AllegraEra)
-> PParamsHKD Identity AllegraEra -> PParams AllegraEra
forall a b. (a -> b) -> a -> b
$
          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 Coin
-> ShelleyPParams f era
ShelleyPParams @Identity @AllegraEra Coin
HKD Identity Coin
a Coin
HKD Identity Coin
b Word32
HKD Identity Word32
c Word32
HKD Identity Word32
d Word16
HKD Identity Word16
e Coin
HKD Identity Coin
f Coin
HKD Identity Coin
g EpochInterval
HKD Identity EpochInterval
h Word16
HKD Identity Word16
i HKD Identity NonNegativeInterval
NonNegativeInterval
j HKD Identity UnitInterval
UnitInterval
k HKD Identity UnitInterval
UnitInterval
l HKD Identity UnitInterval
UnitInterval
m HKD Identity Nonce
Nonce
n (Version -> Natural -> ProtVer
ProtVer Version
o Natural
p) Coin
HKD Identity Coin
q Coin
HKD Identity Coin
r

instance FromCBOR (LegacyPParams AllegraEra) where
  fromCBOR :: forall s. Decoder s (LegacyPParams AllegraEra)
fromCBOR =
    forall era t s. Era era => Decoder s t -> Decoder s t
eraDecoder @AllegraEra (Decoder s (LegacyPParams AllegraEra)
 -> Decoder s (LegacyPParams AllegraEra))
-> Decoder s (LegacyPParams AllegraEra)
-> Decoder s (LegacyPParams AllegraEra)
forall a b. (a -> b) -> a -> b
$
      Decode ('Closed 'Dense) (LegacyPParams AllegraEra)
-> Decoder s (LegacyPParams AllegraEra)
forall t (w :: Wrapped) s. Typeable t => Decode w t -> Decoder s t
decode
        ( (Coin
 -> Coin
 -> Word32
 -> Word32
 -> Word16
 -> Coin
 -> Coin
 -> EpochInterval
 -> Word16
 -> NonNegativeInterval
 -> UnitInterval
 -> UnitInterval
 -> UnitInterval
 -> Nonce
 -> Version
 -> Natural
 -> Coin
 -> Coin
 -> LegacyPParams AllegraEra)
-> Decode
     ('Closed 'Dense)
     (Coin
      -> Coin
      -> Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall t. t -> Decode ('Closed 'Dense) t
RecD Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> Version
-> Natural
-> Coin
-> Coin
-> LegacyPParams AllegraEra
mkLegacyAllegraPParams
            Decode
  ('Closed 'Dense)
  (Coin
   -> Coin
   -> Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Decode ('Closed (ZonkAny 83)) Coin
-> Decode
     ('Closed 'Dense)
     (Coin
      -> Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 83)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMinFeeA
            Decode
  ('Closed 'Dense)
  (Coin
   -> Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Decode ('Closed (ZonkAny 82)) Coin
-> Decode
     ('Closed 'Dense)
     (Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 82)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMinFeeB
            Decode
  ('Closed 'Dense)
  (Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Decode ('Closed (ZonkAny 81)) Word32
-> Decode
     ('Closed 'Dense)
     (Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 81)) Word32
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMaxBBSize
            Decode
  ('Closed 'Dense)
  (Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Decode ('Closed (ZonkAny 80)) Word32
-> Decode
     ('Closed 'Dense)
     (Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 80)) Word32
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMaxTxSize
            Decode
  ('Closed 'Dense)
  (Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Decode ('Closed (ZonkAny 79)) Word16
-> Decode
     ('Closed 'Dense)
     (Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 79)) Word16
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMaxBHSize
            Decode
  ('Closed 'Dense)
  (Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Decode ('Closed (ZonkAny 78)) Coin
-> Decode
     ('Closed 'Dense)
     (Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 78)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppKeyDeposit
            Decode
  ('Closed 'Dense)
  (Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Decode ('Closed (ZonkAny 77)) Coin
-> Decode
     ('Closed 'Dense)
     (EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 77)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppPoolDeposit
            Decode
  ('Closed 'Dense)
  (EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Decode ('Closed (ZonkAny 76)) EpochInterval
-> Decode
     ('Closed 'Dense)
     (Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 76)) EpochInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppEMax
            Decode
  ('Closed 'Dense)
  (Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Decode ('Closed (ZonkAny 75)) Word16
-> Decode
     ('Closed 'Dense)
     (NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 75)) Word16
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppNOpt
            Decode
  ('Closed 'Dense)
  (NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Decode ('Closed (ZonkAny 74)) NonNegativeInterval
-> Decode
     ('Closed 'Dense)
     (UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 74)) NonNegativeInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppA0
            Decode
  ('Closed 'Dense)
  (UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Decode ('Closed (ZonkAny 73)) UnitInterval
-> Decode
     ('Closed 'Dense)
     (UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 73)) UnitInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppRho
            Decode
  ('Closed 'Dense)
  (UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Decode ('Closed (ZonkAny 72)) UnitInterval
-> Decode
     ('Closed 'Dense)
     (UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams AllegraEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 72)) UnitInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppTau
            Decode
  ('Closed 'Dense)
  (UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams AllegraEra)
-> Decode ('Closed (ZonkAny 71)) UnitInterval
-> Decode
     ('Closed 'Dense)
     (Nonce
      -> Version -> Natural -> Coin -> Coin -> LegacyPParams AllegraEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 71)) UnitInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppD
            Decode
  ('Closed 'Dense)
  (Nonce
   -> Version -> Natural -> Coin -> Coin -> LegacyPParams AllegraEra)
-> Decode ('Closed (ZonkAny 70)) Nonce
-> Decode
     ('Closed 'Dense)
     (Version -> Natural -> Coin -> Coin -> LegacyPParams AllegraEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 70)) Nonce
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppExtraEntropy
            Decode
  ('Closed 'Dense)
  (Version -> Natural -> Coin -> Coin -> LegacyPParams AllegraEra)
-> Decode ('Closed (ZonkAny 69)) Version
-> Decode
     ('Closed 'Dense)
     (Natural -> Coin -> Coin -> LegacyPParams AllegraEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 69)) Version
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- (pvMajor sppProtocolVersion)
            Decode
  ('Closed 'Dense)
  (Natural -> Coin -> Coin -> LegacyPParams AllegraEra)
-> Decode ('Closed (ZonkAny 68)) Natural
-> Decode
     ('Closed 'Dense) (Coin -> Coin -> LegacyPParams AllegraEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 68)) Natural
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- (pvMinor sppProtocolVersion)
            Decode ('Closed 'Dense) (Coin -> Coin -> LegacyPParams AllegraEra)
-> Decode ('Closed (ZonkAny 67)) Coin
-> Decode ('Closed 'Dense) (Coin -> LegacyPParams AllegraEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 67)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMinUTxOValue
            Decode ('Closed 'Dense) (Coin -> LegacyPParams AllegraEra)
-> Decode ('Closed (ZonkAny 66)) Coin
-> Decode ('Closed 'Dense) (LegacyPParams AllegraEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 66)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMinPoolCost
        )
   where
    mkLegacyAllegraPParams :: Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> Version
-> Natural
-> Coin
-> Coin
-> LegacyPParams AllegraEra
mkLegacyAllegraPParams Coin
a Coin
b Word32
c Word32
d Word16
e Coin
f Coin
g EpochInterval
h Word16
i NonNegativeInterval
j UnitInterval
k UnitInterval
l UnitInterval
m Nonce
n Version
o Natural
p Coin
q Coin
r =
      PParams AllegraEra -> LegacyPParams AllegraEra
forall era. PParams era -> LegacyPParams era
LegacyPParams (PParams AllegraEra -> LegacyPParams AllegraEra)
-> PParams AllegraEra -> LegacyPParams AllegraEra
forall a b. (a -> b) -> a -> b
$
        PParamsHKD Identity AllegraEra -> PParams AllegraEra
forall era. PParamsHKD Identity era -> PParams era
PParams (PParamsHKD Identity AllegraEra -> PParams AllegraEra)
-> PParamsHKD Identity AllegraEra -> PParams AllegraEra
forall a b. (a -> b) -> a -> b
$
          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 Coin
-> ShelleyPParams f era
ShelleyPParams @Identity @AllegraEra Coin
HKD Identity Coin
a Coin
HKD Identity Coin
b Word32
HKD Identity Word32
c Word32
HKD Identity Word32
d Word16
HKD Identity Word16
e Coin
HKD Identity Coin
f Coin
HKD Identity Coin
g EpochInterval
HKD Identity EpochInterval
h Word16
HKD Identity Word16
i HKD Identity NonNegativeInterval
NonNegativeInterval
j HKD Identity UnitInterval
UnitInterval
k HKD Identity UnitInterval
UnitInterval
l HKD Identity UnitInterval
UnitInterval
m HKD Identity Nonce
Nonce
n (Version -> Natural -> ProtVer
ProtVer Version
o Natural
p) Coin
HKD Identity Coin
q Coin
HKD Identity Coin
r

instance ToCBOR (LegacyPParams MaryEra) where
  toCBOR :: LegacyPParams MaryEra -> Encoding
toCBOR (LegacyPParams (PParams ShelleyPParams{HKD Identity Word16
HKD Identity Word32
HKD Identity Coin
HKD Identity EpochInterval
HKD Identity Nonce
HKD Identity UnitInterval
HKD Identity NonNegativeInterval
HKD Identity ProtVer
sppMinPoolCost :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Coin
sppMinUTxOValue :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Coin
sppProtocolVersion :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f ProtVer
sppExtraEntropy :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Nonce
sppD :: forall (f :: * -> *) era.
ShelleyPParams f era -> HKD f UnitInterval
sppTau :: forall (f :: * -> *) era.
ShelleyPParams f era -> HKD f UnitInterval
sppRho :: forall (f :: * -> *) era.
ShelleyPParams f era -> HKD f UnitInterval
sppA0 :: forall (f :: * -> *) era.
ShelleyPParams f era -> HKD f NonNegativeInterval
sppNOpt :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Word16
sppEMax :: forall (f :: * -> *) era.
ShelleyPParams f era -> HKD f EpochInterval
sppPoolDeposit :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Coin
sppKeyDeposit :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Coin
sppMaxBHSize :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Word16
sppMaxTxSize :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Word32
sppMaxBBSize :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Word32
sppMinFeeB :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Coin
sppMinFeeA :: forall (f :: * -> *) era. ShelleyPParams f era -> HKD f Coin
sppMinFeeA :: HKD Identity Coin
sppMinFeeB :: HKD Identity Coin
sppMaxBBSize :: HKD Identity Word32
sppMaxTxSize :: HKD Identity Word32
sppMaxBHSize :: HKD Identity Word16
sppKeyDeposit :: HKD Identity Coin
sppPoolDeposit :: HKD Identity Coin
sppEMax :: HKD Identity EpochInterval
sppNOpt :: HKD Identity Word16
sppA0 :: HKD Identity NonNegativeInterval
sppRho :: HKD Identity UnitInterval
sppTau :: HKD Identity UnitInterval
sppD :: HKD Identity UnitInterval
sppExtraEntropy :: HKD Identity Nonce
sppProtocolVersion :: HKD Identity ProtVer
sppMinUTxOValue :: HKD Identity Coin
sppMinPoolCost :: HKD Identity Coin
..})) =
    Version -> Encoding -> Encoding
toPlainEncoding (forall era. Era era => Version
eraProtVerLow @MaryEra) (Encoding -> Encoding) -> Encoding -> Encoding
forall a b. (a -> b) -> a -> b
$
      Encode ('Closed 'Dense) (LegacyPParams MaryEra) -> Encoding
forall (w :: Wrapped) t. Encode w t -> Encoding
encode
        ( (Coin
 -> Coin
 -> Word32
 -> Word32
 -> Word16
 -> Coin
 -> Coin
 -> EpochInterval
 -> Word16
 -> NonNegativeInterval
 -> UnitInterval
 -> UnitInterval
 -> UnitInterval
 -> Nonce
 -> Version
 -> Natural
 -> Coin
 -> Coin
 -> LegacyPParams MaryEra)
-> Encode
     ('Closed 'Dense)
     (Coin
      -> Coin
      -> Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall t. t -> Encode ('Closed 'Dense) t
Rec Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> Version
-> Natural
-> Coin
-> Coin
-> LegacyPParams MaryEra
mkLegacyMaryPParams
            Encode
  ('Closed 'Dense)
  (Coin
   -> Coin
   -> Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (Coin
      -> Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
sppMinFeeA
            Encode
  ('Closed 'Dense)
  (Coin
   -> Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
sppMinFeeB
            Encode
  ('Closed 'Dense)
  (Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Encode ('Closed 'Dense) Word32
-> Encode
     ('Closed 'Dense)
     (Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Word32 -> Encode ('Closed 'Dense) Word32
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Word32
HKD Identity Word32
sppMaxBBSize
            Encode
  ('Closed 'Dense)
  (Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Encode ('Closed 'Dense) Word32
-> Encode
     ('Closed 'Dense)
     (Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Word32 -> Encode ('Closed 'Dense) Word32
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Word32
HKD Identity Word32
sppMaxTxSize
            Encode
  ('Closed 'Dense)
  (Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Encode ('Closed 'Dense) Word16
-> Encode
     ('Closed 'Dense)
     (Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Word16 -> Encode ('Closed 'Dense) Word16
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Word16
HKD Identity Word16
sppMaxBHSize
            Encode
  ('Closed 'Dense)
  (Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
sppKeyDeposit
            Encode
  ('Closed 'Dense)
  (Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
sppPoolDeposit
            Encode
  ('Closed 'Dense)
  (EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Encode ('Closed 'Dense) EpochInterval
-> Encode
     ('Closed 'Dense)
     (Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> EpochInterval -> Encode ('Closed 'Dense) EpochInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To EpochInterval
HKD Identity EpochInterval
sppEMax
            Encode
  ('Closed 'Dense)
  (Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Encode ('Closed 'Dense) Word16
-> Encode
     ('Closed 'Dense)
     (NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Word16 -> Encode ('Closed 'Dense) Word16
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Word16
HKD Identity Word16
sppNOpt
            Encode
  ('Closed 'Dense)
  (NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Encode ('Closed 'Dense) NonNegativeInterval
-> Encode
     ('Closed 'Dense)
     (UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> NonNegativeInterval -> Encode ('Closed 'Dense) NonNegativeInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity NonNegativeInterval
NonNegativeInterval
sppA0
            Encode
  ('Closed 'Dense)
  (UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Encode ('Closed 'Dense) UnitInterval
-> Encode
     ('Closed 'Dense)
     (UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> UnitInterval -> Encode ('Closed 'Dense) UnitInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity UnitInterval
UnitInterval
sppRho
            Encode
  ('Closed 'Dense)
  (UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Encode ('Closed 'Dense) UnitInterval
-> Encode
     ('Closed 'Dense)
     (UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> UnitInterval -> Encode ('Closed 'Dense) UnitInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity UnitInterval
UnitInterval
sppTau
            Encode
  ('Closed 'Dense)
  (UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Encode ('Closed 'Dense) UnitInterval
-> Encode
     ('Closed 'Dense)
     (Nonce
      -> Version -> Natural -> Coin -> Coin -> LegacyPParams MaryEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> UnitInterval -> Encode ('Closed 'Dense) UnitInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity UnitInterval
UnitInterval
sppD
            Encode
  ('Closed 'Dense)
  (Nonce
   -> Version -> Natural -> Coin -> Coin -> LegacyPParams MaryEra)
-> Encode ('Closed 'Dense) Nonce
-> Encode
     ('Closed 'Dense)
     (Version -> Natural -> Coin -> Coin -> LegacyPParams MaryEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Nonce -> Encode ('Closed 'Dense) Nonce
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity Nonce
Nonce
sppExtraEntropy
            Encode
  ('Closed 'Dense)
  (Version -> Natural -> Coin -> Coin -> LegacyPParams MaryEra)
-> Encode ('Closed 'Dense) Version
-> Encode
     ('Closed 'Dense) (Natural -> Coin -> Coin -> LegacyPParams MaryEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Version -> Encode ('Closed 'Dense) Version
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To (ProtVer -> Version
pvMajor HKD Identity ProtVer
ProtVer
sppProtocolVersion)
            Encode
  ('Closed 'Dense) (Natural -> Coin -> Coin -> LegacyPParams MaryEra)
-> Encode ('Closed 'Dense) Natural
-> Encode ('Closed 'Dense) (Coin -> Coin -> LegacyPParams MaryEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Natural -> Encode ('Closed 'Dense) Natural
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To (ProtVer -> Natural
pvMinor HKD Identity ProtVer
ProtVer
sppProtocolVersion)
            Encode ('Closed 'Dense) (Coin -> Coin -> LegacyPParams MaryEra)
-> Encode ('Closed 'Dense) Coin
-> Encode ('Closed 'Dense) (Coin -> LegacyPParams MaryEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
sppMinUTxOValue
            Encode ('Closed 'Dense) (Coin -> LegacyPParams MaryEra)
-> Encode ('Closed 'Dense) Coin
-> Encode ('Closed 'Dense) (LegacyPParams MaryEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
sppMinPoolCost
        )
   where
    mkLegacyMaryPParams :: Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> Version
-> Natural
-> Coin
-> Coin
-> LegacyPParams MaryEra
mkLegacyMaryPParams Coin
a Coin
b Word32
c Word32
d Word16
e Coin
f Coin
g EpochInterval
h Word16
i NonNegativeInterval
j UnitInterval
k UnitInterval
l UnitInterval
m Nonce
n Version
o Natural
p Coin
q Coin
r =
      PParams MaryEra -> LegacyPParams MaryEra
forall era. PParams era -> LegacyPParams era
LegacyPParams (PParams MaryEra -> LegacyPParams MaryEra)
-> PParams MaryEra -> LegacyPParams MaryEra
forall a b. (a -> b) -> a -> b
$
        PParamsHKD Identity MaryEra -> PParams MaryEra
forall era. PParamsHKD Identity era -> PParams era
PParams (PParamsHKD Identity MaryEra -> PParams MaryEra)
-> PParamsHKD Identity MaryEra -> PParams MaryEra
forall a b. (a -> b) -> a -> b
$
          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 Coin
-> ShelleyPParams f era
ShelleyPParams @Identity @MaryEra Coin
HKD Identity Coin
a Coin
HKD Identity Coin
b Word32
HKD Identity Word32
c Word32
HKD Identity Word32
d Word16
HKD Identity Word16
e Coin
HKD Identity Coin
f Coin
HKD Identity Coin
g EpochInterval
HKD Identity EpochInterval
h Word16
HKD Identity Word16
i HKD Identity NonNegativeInterval
NonNegativeInterval
j HKD Identity UnitInterval
UnitInterval
k HKD Identity UnitInterval
UnitInterval
l HKD Identity UnitInterval
UnitInterval
m HKD Identity Nonce
Nonce
n (Version -> Natural -> ProtVer
ProtVer Version
o Natural
p) Coin
HKD Identity Coin
q Coin
HKD Identity Coin
r

instance FromCBOR (LegacyPParams MaryEra) where
  fromCBOR :: forall s. Decoder s (LegacyPParams MaryEra)
fromCBOR =
    forall era t s. Era era => Decoder s t -> Decoder s t
eraDecoder @MaryEra (Decoder s (LegacyPParams MaryEra)
 -> Decoder s (LegacyPParams MaryEra))
-> Decoder s (LegacyPParams MaryEra)
-> Decoder s (LegacyPParams MaryEra)
forall a b. (a -> b) -> a -> b
$
      Decode ('Closed 'Dense) (LegacyPParams MaryEra)
-> Decoder s (LegacyPParams MaryEra)
forall t (w :: Wrapped) s. Typeable t => Decode w t -> Decoder s t
decode
        ( (Coin
 -> Coin
 -> Word32
 -> Word32
 -> Word16
 -> Coin
 -> Coin
 -> EpochInterval
 -> Word16
 -> NonNegativeInterval
 -> UnitInterval
 -> UnitInterval
 -> UnitInterval
 -> Nonce
 -> Version
 -> Natural
 -> Coin
 -> Coin
 -> LegacyPParams MaryEra)
-> Decode
     ('Closed 'Dense)
     (Coin
      -> Coin
      -> Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall t. t -> Decode ('Closed 'Dense) t
RecD Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> Version
-> Natural
-> Coin
-> Coin
-> LegacyPParams MaryEra
mkLegacyMaryPParams
            Decode
  ('Closed 'Dense)
  (Coin
   -> Coin
   -> Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Decode ('Closed (ZonkAny 65)) Coin
-> Decode
     ('Closed 'Dense)
     (Coin
      -> Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 65)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMinFeeA
            Decode
  ('Closed 'Dense)
  (Coin
   -> Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Decode ('Closed (ZonkAny 64)) Coin
-> Decode
     ('Closed 'Dense)
     (Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 64)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMinFeeB
            Decode
  ('Closed 'Dense)
  (Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Decode ('Closed (ZonkAny 63)) Word32
-> Decode
     ('Closed 'Dense)
     (Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 63)) Word32
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMaxBBSize
            Decode
  ('Closed 'Dense)
  (Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Decode ('Closed (ZonkAny 62)) Word32
-> Decode
     ('Closed 'Dense)
     (Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 62)) Word32
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMaxTxSize
            Decode
  ('Closed 'Dense)
  (Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Decode ('Closed (ZonkAny 61)) Word16
-> Decode
     ('Closed 'Dense)
     (Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 61)) Word16
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMaxBHSize
            Decode
  ('Closed 'Dense)
  (Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Decode ('Closed (ZonkAny 60)) Coin
-> Decode
     ('Closed 'Dense)
     (Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 60)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppKeyDeposit
            Decode
  ('Closed 'Dense)
  (Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Decode ('Closed (ZonkAny 59)) Coin
-> Decode
     ('Closed 'Dense)
     (EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 59)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppPoolDeposit
            Decode
  ('Closed 'Dense)
  (EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Decode ('Closed (ZonkAny 58)) EpochInterval
-> Decode
     ('Closed 'Dense)
     (Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 58)) EpochInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppEMax
            Decode
  ('Closed 'Dense)
  (Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Decode ('Closed (ZonkAny 57)) Word16
-> Decode
     ('Closed 'Dense)
     (NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 57)) Word16
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppNOpt
            Decode
  ('Closed 'Dense)
  (NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Decode ('Closed (ZonkAny 56)) NonNegativeInterval
-> Decode
     ('Closed 'Dense)
     (UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 56)) NonNegativeInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppA0
            Decode
  ('Closed 'Dense)
  (UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Decode ('Closed (ZonkAny 55)) UnitInterval
-> Decode
     ('Closed 'Dense)
     (UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 55)) UnitInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppRho
            Decode
  ('Closed 'Dense)
  (UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Decode ('Closed (ZonkAny 54)) UnitInterval
-> Decode
     ('Closed 'Dense)
     (UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> Coin
      -> LegacyPParams MaryEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 54)) UnitInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppTau
            Decode
  ('Closed 'Dense)
  (UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> Coin
   -> LegacyPParams MaryEra)
-> Decode ('Closed (ZonkAny 53)) UnitInterval
-> Decode
     ('Closed 'Dense)
     (Nonce
      -> Version -> Natural -> Coin -> Coin -> LegacyPParams MaryEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 53)) UnitInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppD
            Decode
  ('Closed 'Dense)
  (Nonce
   -> Version -> Natural -> Coin -> Coin -> LegacyPParams MaryEra)
-> Decode ('Closed (ZonkAny 52)) Nonce
-> Decode
     ('Closed 'Dense)
     (Version -> Natural -> Coin -> Coin -> LegacyPParams MaryEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 52)) Nonce
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppExtraEntropy
            Decode
  ('Closed 'Dense)
  (Version -> Natural -> Coin -> Coin -> LegacyPParams MaryEra)
-> Decode ('Closed (ZonkAny 51)) Version
-> Decode
     ('Closed 'Dense) (Natural -> Coin -> Coin -> LegacyPParams MaryEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 51)) Version
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- (pvMajor sppProtocolVersion)
            Decode
  ('Closed 'Dense) (Natural -> Coin -> Coin -> LegacyPParams MaryEra)
-> Decode ('Closed (ZonkAny 50)) Natural
-> Decode ('Closed 'Dense) (Coin -> Coin -> LegacyPParams MaryEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 50)) Natural
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- (pvMinor sppProtocolVersion)
            Decode ('Closed 'Dense) (Coin -> Coin -> LegacyPParams MaryEra)
-> Decode ('Closed (ZonkAny 49)) Coin
-> Decode ('Closed 'Dense) (Coin -> LegacyPParams MaryEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 49)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMinUTxOValue
            Decode ('Closed 'Dense) (Coin -> LegacyPParams MaryEra)
-> Decode ('Closed (ZonkAny 48)) Coin
-> Decode ('Closed 'Dense) (LegacyPParams MaryEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 48)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- sppMinPoolCost
        )
   where
    mkLegacyMaryPParams :: Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> Version
-> Natural
-> Coin
-> Coin
-> LegacyPParams MaryEra
mkLegacyMaryPParams Coin
a Coin
b Word32
c Word32
d Word16
e Coin
f Coin
g EpochInterval
h Word16
i NonNegativeInterval
j UnitInterval
k UnitInterval
l UnitInterval
m Nonce
n Version
o Natural
p Coin
q Coin
r =
      PParams MaryEra -> LegacyPParams MaryEra
forall era. PParams era -> LegacyPParams era
LegacyPParams (PParams MaryEra -> LegacyPParams MaryEra)
-> PParams MaryEra -> LegacyPParams MaryEra
forall a b. (a -> b) -> a -> b
$
        PParamsHKD Identity MaryEra -> PParams MaryEra
forall era. PParamsHKD Identity era -> PParams era
PParams (PParamsHKD Identity MaryEra -> PParams MaryEra)
-> PParamsHKD Identity MaryEra -> PParams MaryEra
forall a b. (a -> b) -> a -> b
$
          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 Coin
-> ShelleyPParams f era
ShelleyPParams @Identity @MaryEra Coin
HKD Identity Coin
a Coin
HKD Identity Coin
b Word32
HKD Identity Word32
c Word32
HKD Identity Word32
d Word16
HKD Identity Word16
e Coin
HKD Identity Coin
f Coin
HKD Identity Coin
g EpochInterval
HKD Identity EpochInterval
h Word16
HKD Identity Word16
i HKD Identity NonNegativeInterval
NonNegativeInterval
j HKD Identity UnitInterval
UnitInterval
k HKD Identity UnitInterval
UnitInterval
l HKD Identity UnitInterval
UnitInterval
m HKD Identity Nonce
Nonce
n (Version -> Natural -> ProtVer
ProtVer Version
o Natural
p) Coin
HKD Identity Coin
q Coin
HKD Identity Coin
r

instance ToCBOR (LegacyPParams AlonzoEra) where
  toCBOR :: LegacyPParams AlonzoEra -> Encoding
toCBOR (LegacyPParams (PParams AlonzoPParams{HKD Identity Natural
HKD Identity Word16
HKD Identity Word32
HKD Identity OrdExUnits
HKD Identity CoinPerWord
HKD Identity CostModels
HKD Identity Prices
HKD Identity Coin
HKD Identity EpochInterval
HKD Identity Nonce
HKD Identity UnitInterval
HKD Identity NonNegativeInterval
HKD Identity ProtVer
appMinFeeA :: HKD Identity Coin
appMinFeeB :: HKD Identity Coin
appMaxBBSize :: HKD Identity Word32
appMaxTxSize :: HKD Identity Word32
appMaxBHSize :: HKD Identity Word16
appKeyDeposit :: HKD Identity Coin
appPoolDeposit :: HKD Identity Coin
appEMax :: HKD Identity EpochInterval
appNOpt :: HKD Identity Word16
appA0 :: HKD Identity NonNegativeInterval
appRho :: HKD Identity UnitInterval
appTau :: HKD Identity UnitInterval
appD :: HKD Identity UnitInterval
appExtraEntropy :: HKD Identity Nonce
appProtocolVersion :: HKD Identity ProtVer
appMinPoolCost :: HKD Identity Coin
appCoinsPerUTxOWord :: HKD Identity CoinPerWord
appCostModels :: HKD Identity CostModels
appPrices :: HKD Identity Prices
appMaxTxExUnits :: HKD Identity OrdExUnits
appMaxBlockExUnits :: HKD Identity OrdExUnits
appMaxValSize :: HKD Identity Natural
appCollateralPercentage :: HKD Identity Natural
appMaxCollateralInputs :: HKD Identity Natural
appMaxCollateralInputs :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f Natural
appCollateralPercentage :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f Natural
appMaxValSize :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f Natural
appMaxBlockExUnits :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f OrdExUnits
appMaxTxExUnits :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f OrdExUnits
appPrices :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f Prices
appCostModels :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f CostModels
appCoinsPerUTxOWord :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f CoinPerWord
appMinPoolCost :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f Coin
appProtocolVersion :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f ProtVer
appExtraEntropy :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f Nonce
appD :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f UnitInterval
appTau :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f UnitInterval
appRho :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f UnitInterval
appA0 :: forall (f :: * -> *) era.
AlonzoPParams f era -> HKD f NonNegativeInterval
appNOpt :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f Word16
appEMax :: forall (f :: * -> *) era.
AlonzoPParams f era -> HKD f EpochInterval
appPoolDeposit :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f Coin
appKeyDeposit :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f Coin
appMaxBHSize :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f Word16
appMaxTxSize :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f Word32
appMaxBBSize :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f Word32
appMinFeeB :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f Coin
appMinFeeA :: forall (f :: * -> *) era. AlonzoPParams f era -> HKD f Coin
..})) =
    Version -> Encoding -> Encoding
toPlainEncoding (forall era. Era era => Version
eraProtVerLow @AlonzoEra) (Encoding -> Encoding) -> Encoding -> Encoding
forall a b. (a -> b) -> a -> b
$
      Encode ('Closed 'Dense) (LegacyPParams AlonzoEra) -> Encoding
forall (w :: Wrapped) t. Encode w t -> Encoding
encode
        ( (Coin
 -> Coin
 -> Word32
 -> Word32
 -> Word16
 -> Coin
 -> Coin
 -> EpochInterval
 -> Word16
 -> NonNegativeInterval
 -> UnitInterval
 -> UnitInterval
 -> UnitInterval
 -> Nonce
 -> Version
 -> Natural
 -> Coin
 -> CoinPerWord
 -> CostModels
 -> Prices
 -> OrdExUnits
 -> OrdExUnits
 -> Natural
 -> Natural
 -> Natural
 -> LegacyPParams AlonzoEra)
-> Encode
     ('Closed 'Dense)
     (Coin
      -> Coin
      -> Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall t. t -> Encode ('Closed 'Dense) t
Rec Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> Version
-> Natural
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> LegacyPParams AlonzoEra
mkLegacyAlonzoPParams
            Encode
  ('Closed 'Dense)
  (Coin
   -> Coin
   -> Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (Coin
      -> Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
appMinFeeA
            Encode
  ('Closed 'Dense)
  (Coin
   -> Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
appMinFeeB
            Encode
  ('Closed 'Dense)
  (Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) Word32
-> Encode
     ('Closed 'Dense)
     (Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Word32 -> Encode ('Closed 'Dense) Word32
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Word32
HKD Identity Word32
appMaxBBSize
            Encode
  ('Closed 'Dense)
  (Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) Word32
-> Encode
     ('Closed 'Dense)
     (Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Word32 -> Encode ('Closed 'Dense) Word32
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Word32
HKD Identity Word32
appMaxTxSize
            Encode
  ('Closed 'Dense)
  (Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) Word16
-> Encode
     ('Closed 'Dense)
     (Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Word16 -> Encode ('Closed 'Dense) Word16
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Word16
HKD Identity Word16
appMaxBHSize
            Encode
  ('Closed 'Dense)
  (Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
appKeyDeposit
            Encode
  ('Closed 'Dense)
  (Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
appPoolDeposit
            Encode
  ('Closed 'Dense)
  (EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) EpochInterval
-> Encode
     ('Closed 'Dense)
     (Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> EpochInterval -> Encode ('Closed 'Dense) EpochInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To EpochInterval
HKD Identity EpochInterval
appEMax
            Encode
  ('Closed 'Dense)
  (Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) Word16
-> Encode
     ('Closed 'Dense)
     (NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Word16 -> Encode ('Closed 'Dense) Word16
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Word16
HKD Identity Word16
appNOpt
            Encode
  ('Closed 'Dense)
  (NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) NonNegativeInterval
-> Encode
     ('Closed 'Dense)
     (UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> NonNegativeInterval -> Encode ('Closed 'Dense) NonNegativeInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity NonNegativeInterval
NonNegativeInterval
appA0
            Encode
  ('Closed 'Dense)
  (UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) UnitInterval
-> Encode
     ('Closed 'Dense)
     (UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> UnitInterval -> Encode ('Closed 'Dense) UnitInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity UnitInterval
UnitInterval
appRho
            Encode
  ('Closed 'Dense)
  (UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) UnitInterval
-> Encode
     ('Closed 'Dense)
     (UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> UnitInterval -> Encode ('Closed 'Dense) UnitInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity UnitInterval
UnitInterval
appTau
            Encode
  ('Closed 'Dense)
  (UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) UnitInterval
-> Encode
     ('Closed 'Dense)
     (Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> UnitInterval -> Encode ('Closed 'Dense) UnitInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity UnitInterval
UnitInterval
appD
            Encode
  ('Closed 'Dense)
  (Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) Nonce
-> Encode
     ('Closed 'Dense)
     (Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Nonce -> Encode ('Closed 'Dense) Nonce
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity Nonce
Nonce
appExtraEntropy
            Encode
  ('Closed 'Dense)
  (Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) Version
-> Encode
     ('Closed 'Dense)
     (Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Version -> Encode ('Closed 'Dense) Version
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To (ProtVer -> Version
pvMajor HKD Identity ProtVer
ProtVer
appProtocolVersion)
            Encode
  ('Closed 'Dense)
  (Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) Natural
-> Encode
     ('Closed 'Dense)
     (Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Natural -> Encode ('Closed 'Dense) Natural
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To (ProtVer -> Natural
pvMinor HKD Identity ProtVer
ProtVer
appProtocolVersion)
            Encode
  ('Closed 'Dense)
  (Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
appMinPoolCost
            -- new/updated for alonzo
            Encode
  ('Closed 'Dense)
  (CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) CoinPerWord
-> Encode
     ('Closed 'Dense)
     (CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> CoinPerWord -> Encode ('Closed 'Dense) CoinPerWord
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To CoinPerWord
HKD Identity CoinPerWord
appCoinsPerUTxOWord
            Encode
  ('Closed 'Dense)
  (CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) CostModels
-> Encode
     ('Closed 'Dense)
     (Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> CostModels -> Encode ('Closed 'Dense) CostModels
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To CostModels
HKD Identity CostModels
appCostModels
            Encode
  ('Closed 'Dense)
  (Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) Prices
-> Encode
     ('Closed 'Dense)
     (OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Prices -> Encode ('Closed 'Dense) Prices
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Prices
HKD Identity Prices
appPrices
            Encode
  ('Closed 'Dense)
  (OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) OrdExUnits
-> Encode
     ('Closed 'Dense)
     (OrdExUnits
      -> Natural -> Natural -> Natural -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> OrdExUnits -> Encode ('Closed 'Dense) OrdExUnits
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To OrdExUnits
HKD Identity OrdExUnits
appMaxTxExUnits
            Encode
  ('Closed 'Dense)
  (OrdExUnits
   -> Natural -> Natural -> Natural -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) OrdExUnits
-> Encode
     ('Closed 'Dense)
     (Natural -> Natural -> Natural -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> OrdExUnits -> Encode ('Closed 'Dense) OrdExUnits
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To OrdExUnits
HKD Identity OrdExUnits
appMaxBlockExUnits
            Encode
  ('Closed 'Dense)
  (Natural -> Natural -> Natural -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) Natural
-> Encode
     ('Closed 'Dense) (Natural -> Natural -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Natural -> Encode ('Closed 'Dense) Natural
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Natural
HKD Identity Natural
appMaxValSize
            Encode
  ('Closed 'Dense) (Natural -> Natural -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) Natural
-> Encode ('Closed 'Dense) (Natural -> LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Natural -> Encode ('Closed 'Dense) Natural
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Natural
HKD Identity Natural
appCollateralPercentage
            Encode ('Closed 'Dense) (Natural -> LegacyPParams AlonzoEra)
-> Encode ('Closed 'Dense) Natural
-> Encode ('Closed 'Dense) (LegacyPParams AlonzoEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Natural -> Encode ('Closed 'Dense) Natural
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Natural
HKD Identity Natural
appMaxCollateralInputs
        )
   where
    mkLegacyAlonzoPParams :: Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> Version
-> Natural
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> LegacyPParams AlonzoEra
mkLegacyAlonzoPParams Coin
a Coin
b Word32
c Word32
d Word16
e Coin
f Coin
g EpochInterval
h Word16
i NonNegativeInterval
j UnitInterval
k UnitInterval
l UnitInterval
m Nonce
n Version
o Natural
p Coin
q CoinPerWord
r CostModels
s Prices
t OrdExUnits
u OrdExUnits
v Natural
w Natural
x Natural
y =
      PParams AlonzoEra -> LegacyPParams AlonzoEra
forall era. PParams era -> LegacyPParams era
LegacyPParams (PParams AlonzoEra -> LegacyPParams AlonzoEra)
-> PParams AlonzoEra -> LegacyPParams AlonzoEra
forall a b. (a -> b) -> a -> b
$
        PParamsHKD Identity AlonzoEra -> PParams AlonzoEra
forall era. PParamsHKD Identity era -> PParams era
PParams (PParamsHKD Identity AlonzoEra -> PParams AlonzoEra)
-> PParamsHKD Identity AlonzoEra -> PParams AlonzoEra
forall a b. (a -> b) -> a -> b
$
          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
AlonzoPParams @Identity @AlonzoEra Coin
HKD Identity Coin
a Coin
HKD Identity Coin
b Word32
HKD Identity Word32
c Word32
HKD Identity Word32
d Word16
HKD Identity Word16
e Coin
HKD Identity Coin
f Coin
HKD Identity Coin
g EpochInterval
HKD Identity EpochInterval
h Word16
HKD Identity Word16
i HKD Identity NonNegativeInterval
NonNegativeInterval
j HKD Identity UnitInterval
UnitInterval
k HKD Identity UnitInterval
UnitInterval
l HKD Identity UnitInterval
UnitInterval
m HKD Identity Nonce
Nonce
n (Version -> Natural -> ProtVer
ProtVer Version
o Natural
p) Coin
HKD Identity Coin
q CoinPerWord
HKD Identity CoinPerWord
r CostModels
HKD Identity CostModels
s Prices
HKD Identity Prices
t OrdExUnits
HKD Identity OrdExUnits
u OrdExUnits
HKD Identity OrdExUnits
v Natural
HKD Identity Natural
w Natural
HKD Identity Natural
x Natural
HKD Identity Natural
y

instance FromCBOR (LegacyPParams AlonzoEra) where
  fromCBOR :: forall s. Decoder s (LegacyPParams AlonzoEra)
fromCBOR =
    forall era t s. Era era => Decoder s t -> Decoder s t
eraDecoder @AlonzoEra (Decoder s (LegacyPParams AlonzoEra)
 -> Decoder s (LegacyPParams AlonzoEra))
-> Decoder s (LegacyPParams AlonzoEra)
-> Decoder s (LegacyPParams AlonzoEra)
forall a b. (a -> b) -> a -> b
$
      Decode ('Closed 'Dense) (LegacyPParams AlonzoEra)
-> Decoder s (LegacyPParams AlonzoEra)
forall t (w :: Wrapped) s. Typeable t => Decode w t -> Decoder s t
decode (Decode ('Closed 'Dense) (LegacyPParams AlonzoEra)
 -> Decoder s (LegacyPParams AlonzoEra))
-> Decode ('Closed 'Dense) (LegacyPParams AlonzoEra)
-> Decoder s (LegacyPParams AlonzoEra)
forall a b. (a -> b) -> a -> b
$
        (Coin
 -> Coin
 -> Word32
 -> Word32
 -> Word16
 -> Coin
 -> Coin
 -> EpochInterval
 -> Word16
 -> NonNegativeInterval
 -> UnitInterval
 -> UnitInterval
 -> UnitInterval
 -> Nonce
 -> Version
 -> Natural
 -> Coin
 -> CoinPerWord
 -> CostModels
 -> Prices
 -> OrdExUnits
 -> OrdExUnits
 -> Natural
 -> Natural
 -> Natural
 -> LegacyPParams AlonzoEra)
-> Decode
     ('Closed 'Dense)
     (Coin
      -> Coin
      -> Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall t. t -> Decode ('Closed 'Dense) t
RecD Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> Version
-> Natural
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> LegacyPParams AlonzoEra
mkLegacyAlonzoPParams
          Decode
  ('Closed 'Dense)
  (Coin
   -> Coin
   -> Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 47)) Coin
-> Decode
     ('Closed 'Dense)
     (Coin
      -> Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 47)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appMinFeeA
          Decode
  ('Closed 'Dense)
  (Coin
   -> Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 46)) Coin
-> Decode
     ('Closed 'Dense)
     (Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 46)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appMinFeeB
          Decode
  ('Closed 'Dense)
  (Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 45)) Word32
-> Decode
     ('Closed 'Dense)
     (Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 45)) Word32
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appMaxBBSize
          Decode
  ('Closed 'Dense)
  (Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 44)) Word32
-> Decode
     ('Closed 'Dense)
     (Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 44)) Word32
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appMaxTxSize
          Decode
  ('Closed 'Dense)
  (Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 43)) Word16
-> Decode
     ('Closed 'Dense)
     (Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 43)) Word16
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appMaxBHSize
          Decode
  ('Closed 'Dense)
  (Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 42)) Coin
-> Decode
     ('Closed 'Dense)
     (Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 42)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appKeyDeposit
          Decode
  ('Closed 'Dense)
  (Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 41)) Coin
-> Decode
     ('Closed 'Dense)
     (EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 41)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appPoolDeposit
          Decode
  ('Closed 'Dense)
  (EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 40)) EpochInterval
-> Decode
     ('Closed 'Dense)
     (Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 40)) EpochInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appEMax
          Decode
  ('Closed 'Dense)
  (Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 39)) Word16
-> Decode
     ('Closed 'Dense)
     (NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 39)) Word16
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appNOpt
          Decode
  ('Closed 'Dense)
  (NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 38)) NonNegativeInterval
-> Decode
     ('Closed 'Dense)
     (UnitInterval
      -> UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 38)) NonNegativeInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appA0
          Decode
  ('Closed 'Dense)
  (UnitInterval
   -> UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 37)) UnitInterval
-> Decode
     ('Closed 'Dense)
     (UnitInterval
      -> UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 37)) UnitInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appRho
          Decode
  ('Closed 'Dense)
  (UnitInterval
   -> UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 36)) UnitInterval
-> Decode
     ('Closed 'Dense)
     (UnitInterval
      -> Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 36)) UnitInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appTau
          Decode
  ('Closed 'Dense)
  (UnitInterval
   -> Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 35)) UnitInterval
-> Decode
     ('Closed 'Dense)
     (Nonce
      -> Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 35)) UnitInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appD
          Decode
  ('Closed 'Dense)
  (Nonce
   -> Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 34)) Nonce
-> Decode
     ('Closed 'Dense)
     (Version
      -> Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 34)) Nonce
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appExtraEntropy
          Decode
  ('Closed 'Dense)
  (Version
   -> Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 33)) Version
-> Decode
     ('Closed 'Dense)
     (Natural
      -> Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 33)) Version
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- pvMajor appProtocolVersion
          Decode
  ('Closed 'Dense)
  (Natural
   -> Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 32)) Natural
-> Decode
     ('Closed 'Dense)
     (Coin
      -> CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 32)) Natural
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- pvMinor
          Decode
  ('Closed 'Dense)
  (Coin
   -> CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 31)) Coin
-> Decode
     ('Closed 'Dense)
     (CoinPerWord
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 31)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appMinPoolCost
          -- new/updated for alonzo
          Decode
  ('Closed 'Dense)
  (CoinPerWord
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 30)) CoinPerWord
-> Decode
     ('Closed 'Dense)
     (CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 30)) CoinPerWord
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appCoinsPerUTxOWord
          Decode
  ('Closed 'Dense)
  (CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 29)) CostModels
-> Decode
     ('Closed 'Dense)
     (Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 29)) CostModels
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appCostModels
          Decode
  ('Closed 'Dense)
  (Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 28)) Prices
-> Decode
     ('Closed 'Dense)
     (OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 28)) Prices
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appPrices
          Decode
  ('Closed 'Dense)
  (OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 27)) OrdExUnits
-> Decode
     ('Closed 'Dense)
     (OrdExUnits
      -> Natural -> Natural -> Natural -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 27)) OrdExUnits
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appMaxTxExUnits
          Decode
  ('Closed 'Dense)
  (OrdExUnits
   -> Natural -> Natural -> Natural -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 26)) OrdExUnits
-> Decode
     ('Closed 'Dense)
     (Natural -> Natural -> Natural -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 26)) OrdExUnits
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appMaxBlockExUnits
          Decode
  ('Closed 'Dense)
  (Natural -> Natural -> Natural -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 25)) Natural
-> Decode
     ('Closed 'Dense) (Natural -> Natural -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 25)) Natural
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appMaxValSize
          Decode
  ('Closed 'Dense) (Natural -> Natural -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 24)) Natural
-> Decode ('Closed 'Dense) (Natural -> LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 24)) Natural
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appCollateralPercentage
          Decode ('Closed 'Dense) (Natural -> LegacyPParams AlonzoEra)
-> Decode ('Closed (ZonkAny 23)) Natural
-> Decode ('Closed 'Dense) (LegacyPParams AlonzoEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 23)) Natural
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- appMaxCollateralInputs
   where
    mkLegacyAlonzoPParams :: Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> UnitInterval
-> Nonce
-> Version
-> Natural
-> Coin
-> CoinPerWord
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> LegacyPParams AlonzoEra
mkLegacyAlonzoPParams Coin
a Coin
b Word32
c Word32
d Word16
e Coin
f Coin
g EpochInterval
h Word16
i NonNegativeInterval
j UnitInterval
k UnitInterval
l UnitInterval
m Nonce
n Version
o Natural
p Coin
q CoinPerWord
r CostModels
s Prices
t OrdExUnits
u OrdExUnits
v Natural
w Natural
x Natural
y =
      PParams AlonzoEra -> LegacyPParams AlonzoEra
forall era. PParams era -> LegacyPParams era
LegacyPParams (PParams AlonzoEra -> LegacyPParams AlonzoEra)
-> PParams AlonzoEra -> LegacyPParams AlonzoEra
forall a b. (a -> b) -> a -> b
$
        PParamsHKD Identity AlonzoEra -> PParams AlonzoEra
forall era. PParamsHKD Identity era -> PParams era
PParams (PParamsHKD Identity AlonzoEra -> PParams AlonzoEra)
-> PParamsHKD Identity AlonzoEra -> PParams AlonzoEra
forall a b. (a -> b) -> a -> b
$
          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
AlonzoPParams @Identity @AlonzoEra Coin
HKD Identity Coin
a Coin
HKD Identity Coin
b Word32
HKD Identity Word32
c Word32
HKD Identity Word32
d Word16
HKD Identity Word16
e Coin
HKD Identity Coin
f Coin
HKD Identity Coin
g EpochInterval
HKD Identity EpochInterval
h Word16
HKD Identity Word16
i HKD Identity NonNegativeInterval
NonNegativeInterval
j HKD Identity UnitInterval
UnitInterval
k HKD Identity UnitInterval
UnitInterval
l HKD Identity UnitInterval
UnitInterval
m HKD Identity Nonce
Nonce
n (Version -> Natural -> ProtVer
ProtVer Version
o Natural
p) Coin
HKD Identity Coin
q CoinPerWord
HKD Identity CoinPerWord
r CostModels
HKD Identity CostModels
s Prices
HKD Identity Prices
t OrdExUnits
HKD Identity OrdExUnits
u OrdExUnits
HKD Identity OrdExUnits
v Natural
HKD Identity Natural
w Natural
HKD Identity Natural
x Natural
HKD Identity Natural
y

instance ToCBOR (LegacyPParams BabbageEra) where
  toCBOR :: LegacyPParams BabbageEra -> Encoding
toCBOR (LegacyPParams (PParams BabbagePParams{HKD Identity Natural
HKD Identity Word16
HKD Identity Word32
HKD Identity OrdExUnits
HKD Identity CostModels
HKD Identity Prices
HKD Identity CoinPerByte
HKD Identity Coin
HKD Identity EpochInterval
HKD Identity UnitInterval
HKD Identity NonNegativeInterval
HKD Identity ProtVer
bppMinFeeA :: HKD Identity Coin
bppMinFeeB :: HKD Identity Coin
bppMaxBBSize :: HKD Identity Word32
bppMaxTxSize :: HKD Identity Word32
bppMaxBHSize :: HKD Identity Word16
bppKeyDeposit :: HKD Identity Coin
bppPoolDeposit :: HKD Identity Coin
bppEMax :: HKD Identity EpochInterval
bppNOpt :: HKD Identity Word16
bppA0 :: HKD Identity NonNegativeInterval
bppRho :: HKD Identity UnitInterval
bppTau :: HKD Identity UnitInterval
bppProtocolVersion :: HKD Identity ProtVer
bppMinPoolCost :: HKD Identity Coin
bppCoinsPerUTxOByte :: HKD Identity CoinPerByte
bppCostModels :: HKD Identity CostModels
bppPrices :: HKD Identity Prices
bppMaxTxExUnits :: HKD Identity OrdExUnits
bppMaxBlockExUnits :: HKD Identity OrdExUnits
bppMaxValSize :: HKD Identity Natural
bppCollateralPercentage :: HKD Identity Natural
bppMaxCollateralInputs :: HKD Identity Natural
bppMaxCollateralInputs :: forall (f :: * -> *) era. BabbagePParams f era -> HKD f Natural
bppCollateralPercentage :: forall (f :: * -> *) era. BabbagePParams f era -> HKD f Natural
bppMaxValSize :: forall (f :: * -> *) era. BabbagePParams f era -> HKD f Natural
bppMaxBlockExUnits :: forall (f :: * -> *) era. BabbagePParams f era -> HKD f OrdExUnits
bppMaxTxExUnits :: forall (f :: * -> *) era. BabbagePParams f era -> HKD f OrdExUnits
bppPrices :: forall (f :: * -> *) era. BabbagePParams f era -> HKD f Prices
bppCostModels :: forall (f :: * -> *) era. BabbagePParams f era -> HKD f CostModels
bppCoinsPerUTxOByte :: forall (f :: * -> *) era. BabbagePParams f era -> HKD f CoinPerByte
bppMinPoolCost :: forall (f :: * -> *) era. BabbagePParams f era -> HKD f Coin
bppProtocolVersion :: forall (f :: * -> *) era. BabbagePParams f era -> HKD f ProtVer
bppTau :: forall (f :: * -> *) era.
BabbagePParams f era -> HKD f UnitInterval
bppRho :: forall (f :: * -> *) era.
BabbagePParams f era -> HKD f UnitInterval
bppA0 :: forall (f :: * -> *) era.
BabbagePParams f era -> HKD f NonNegativeInterval
bppNOpt :: forall (f :: * -> *) era. BabbagePParams f era -> HKD f Word16
bppEMax :: forall (f :: * -> *) era.
BabbagePParams f era -> HKD f EpochInterval
bppPoolDeposit :: forall (f :: * -> *) era. BabbagePParams f era -> HKD f Coin
bppKeyDeposit :: forall (f :: * -> *) era. BabbagePParams f era -> HKD f Coin
bppMaxBHSize :: forall (f :: * -> *) era. BabbagePParams f era -> HKD f Word16
bppMaxTxSize :: forall (f :: * -> *) era. BabbagePParams f era -> HKD f Word32
bppMaxBBSize :: forall (f :: * -> *) era. BabbagePParams f era -> HKD f Word32
bppMinFeeB :: forall (f :: * -> *) era. BabbagePParams f era -> HKD f Coin
bppMinFeeA :: forall (f :: * -> *) era. BabbagePParams f era -> HKD f Coin
..})) =
    Version -> Encoding -> Encoding
toPlainEncoding (forall era. Era era => Version
eraProtVerLow @BabbageEra) (Encoding -> Encoding) -> Encoding -> Encoding
forall a b. (a -> b) -> a -> b
$
      Encode ('Closed 'Dense) (LegacyPParams BabbageEra) -> Encoding
forall (w :: Wrapped) t. Encode w t -> Encoding
encode
        ( (Coin
 -> Coin
 -> Word32
 -> Word32
 -> Word16
 -> Coin
 -> Coin
 -> EpochInterval
 -> Word16
 -> NonNegativeInterval
 -> UnitInterval
 -> UnitInterval
 -> Version
 -> Natural
 -> Coin
 -> CoinPerByte
 -> CostModels
 -> Prices
 -> OrdExUnits
 -> OrdExUnits
 -> Natural
 -> Natural
 -> Natural
 -> LegacyPParams BabbageEra)
-> Encode
     ('Closed 'Dense)
     (Coin
      -> Coin
      -> Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall t. t -> Encode ('Closed 'Dense) t
Rec Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> Version
-> Natural
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> LegacyPParams BabbageEra
mkLegacyBabbagePParams
            Encode
  ('Closed 'Dense)
  (Coin
   -> Coin
   -> Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (Coin
      -> Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
bppMinFeeA
            Encode
  ('Closed 'Dense)
  (Coin
   -> Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
bppMinFeeB
            Encode
  ('Closed 'Dense)
  (Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) Word32
-> Encode
     ('Closed 'Dense)
     (Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Word32 -> Encode ('Closed 'Dense) Word32
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Word32
HKD Identity Word32
bppMaxBBSize
            Encode
  ('Closed 'Dense)
  (Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) Word32
-> Encode
     ('Closed 'Dense)
     (Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Word32 -> Encode ('Closed 'Dense) Word32
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Word32
HKD Identity Word32
bppMaxTxSize
            Encode
  ('Closed 'Dense)
  (Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) Word16
-> Encode
     ('Closed 'Dense)
     (Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Word16 -> Encode ('Closed 'Dense) Word16
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Word16
HKD Identity Word16
bppMaxBHSize
            Encode
  ('Closed 'Dense)
  (Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
bppKeyDeposit
            Encode
  ('Closed 'Dense)
  (Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
bppPoolDeposit
            Encode
  ('Closed 'Dense)
  (EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) EpochInterval
-> Encode
     ('Closed 'Dense)
     (Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> EpochInterval -> Encode ('Closed 'Dense) EpochInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To EpochInterval
HKD Identity EpochInterval
bppEMax
            Encode
  ('Closed 'Dense)
  (Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) Word16
-> Encode
     ('Closed 'Dense)
     (NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Word16 -> Encode ('Closed 'Dense) Word16
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Word16
HKD Identity Word16
bppNOpt
            Encode
  ('Closed 'Dense)
  (NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) NonNegativeInterval
-> Encode
     ('Closed 'Dense)
     (UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> NonNegativeInterval -> Encode ('Closed 'Dense) NonNegativeInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity NonNegativeInterval
NonNegativeInterval
bppA0
            Encode
  ('Closed 'Dense)
  (UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) UnitInterval
-> Encode
     ('Closed 'Dense)
     (UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> UnitInterval -> Encode ('Closed 'Dense) UnitInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity UnitInterval
UnitInterval
bppRho
            Encode
  ('Closed 'Dense)
  (UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) UnitInterval
-> Encode
     ('Closed 'Dense)
     (Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> UnitInterval -> Encode ('Closed 'Dense) UnitInterval
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To HKD Identity UnitInterval
UnitInterval
bppTau
            Encode
  ('Closed 'Dense)
  (Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) Version
-> Encode
     ('Closed 'Dense)
     (Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Version -> Encode ('Closed 'Dense) Version
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To (ProtVer -> Version
pvMajor HKD Identity ProtVer
ProtVer
bppProtocolVersion)
            Encode
  ('Closed 'Dense)
  (Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) Natural
-> Encode
     ('Closed 'Dense)
     (Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Natural -> Encode ('Closed 'Dense) Natural
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To (ProtVer -> Natural
pvMinor HKD Identity ProtVer
ProtVer
bppProtocolVersion)
            Encode
  ('Closed 'Dense)
  (Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) Coin
-> Encode
     ('Closed 'Dense)
     (CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Coin -> Encode ('Closed 'Dense) Coin
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Coin
HKD Identity Coin
bppMinPoolCost
            Encode
  ('Closed 'Dense)
  (CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) CoinPerByte
-> Encode
     ('Closed 'Dense)
     (CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> CoinPerByte -> Encode ('Closed 'Dense) CoinPerByte
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To CoinPerByte
HKD Identity CoinPerByte
bppCoinsPerUTxOByte
            Encode
  ('Closed 'Dense)
  (CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) CostModels
-> Encode
     ('Closed 'Dense)
     (Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> CostModels -> Encode ('Closed 'Dense) CostModels
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To CostModels
HKD Identity CostModels
bppCostModels
            Encode
  ('Closed 'Dense)
  (Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) Prices
-> Encode
     ('Closed 'Dense)
     (OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Prices -> Encode ('Closed 'Dense) Prices
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Prices
HKD Identity Prices
bppPrices
            Encode
  ('Closed 'Dense)
  (OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) OrdExUnits
-> Encode
     ('Closed 'Dense)
     (OrdExUnits
      -> Natural -> Natural -> Natural -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> OrdExUnits -> Encode ('Closed 'Dense) OrdExUnits
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To OrdExUnits
HKD Identity OrdExUnits
bppMaxTxExUnits
            Encode
  ('Closed 'Dense)
  (OrdExUnits
   -> Natural -> Natural -> Natural -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) OrdExUnits
-> Encode
     ('Closed 'Dense)
     (Natural -> Natural -> Natural -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> OrdExUnits -> Encode ('Closed 'Dense) OrdExUnits
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To OrdExUnits
HKD Identity OrdExUnits
bppMaxBlockExUnits
            Encode
  ('Closed 'Dense)
  (Natural -> Natural -> Natural -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) Natural
-> Encode
     ('Closed 'Dense) (Natural -> Natural -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Natural -> Encode ('Closed 'Dense) Natural
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Natural
HKD Identity Natural
bppMaxValSize
            Encode
  ('Closed 'Dense) (Natural -> Natural -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) Natural
-> Encode ('Closed 'Dense) (Natural -> LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Natural -> Encode ('Closed 'Dense) Natural
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Natural
HKD Identity Natural
bppCollateralPercentage
            Encode ('Closed 'Dense) (Natural -> LegacyPParams BabbageEra)
-> Encode ('Closed 'Dense) Natural
-> Encode ('Closed 'Dense) (LegacyPParams BabbageEra)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode ('Closed r) a -> Encode w t
!> Natural -> Encode ('Closed 'Dense) Natural
forall t. EncCBOR t => t -> Encode ('Closed 'Dense) t
To Natural
HKD Identity Natural
bppMaxCollateralInputs
        )
   where
    mkLegacyBabbagePParams :: Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> Version
-> Natural
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> LegacyPParams BabbageEra
mkLegacyBabbagePParams Coin
a Coin
b Word32
c Word32
d Word16
e Coin
f Coin
g EpochInterval
h Word16
i NonNegativeInterval
j UnitInterval
k UnitInterval
l Version
m Natural
n Coin
o CoinPerByte
p CostModels
q Prices
r OrdExUnits
s OrdExUnits
t Natural
u Natural
v Natural
w =
      PParams BabbageEra -> LegacyPParams BabbageEra
forall era. PParams era -> LegacyPParams era
LegacyPParams (PParams BabbageEra -> LegacyPParams BabbageEra)
-> PParams BabbageEra -> LegacyPParams BabbageEra
forall a b. (a -> b) -> a -> b
$
        PParamsHKD Identity BabbageEra -> PParams BabbageEra
forall era. PParamsHKD Identity era -> PParams era
PParams (PParamsHKD Identity BabbageEra -> PParams BabbageEra)
-> PParamsHKD Identity BabbageEra -> PParams BabbageEra
forall a b. (a -> b) -> a -> b
$
          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
BabbagePParams @Identity @BabbageEra Coin
HKD Identity Coin
a Coin
HKD Identity Coin
b Word32
HKD Identity Word32
c Word32
HKD Identity Word32
d Word16
HKD Identity Word16
e Coin
HKD Identity Coin
f Coin
HKD Identity Coin
g EpochInterval
HKD Identity EpochInterval
h Word16
HKD Identity Word16
i HKD Identity NonNegativeInterval
NonNegativeInterval
j HKD Identity UnitInterval
UnitInterval
k HKD Identity UnitInterval
UnitInterval
l (Version -> Natural -> ProtVer
ProtVer Version
m Natural
n) Coin
HKD Identity Coin
o CoinPerByte
HKD Identity CoinPerByte
p CostModels
HKD Identity CostModels
q Prices
HKD Identity Prices
r OrdExUnits
HKD Identity OrdExUnits
s OrdExUnits
HKD Identity OrdExUnits
t Natural
HKD Identity Natural
u Natural
HKD Identity Natural
v Natural
HKD Identity Natural
w

instance FromCBOR (LegacyPParams BabbageEra) where
  fromCBOR :: forall s. Decoder s (LegacyPParams BabbageEra)
fromCBOR =
    forall era t s. Era era => Decoder s t -> Decoder s t
eraDecoder @BabbageEra (Decoder s (LegacyPParams BabbageEra)
 -> Decoder s (LegacyPParams BabbageEra))
-> Decoder s (LegacyPParams BabbageEra)
-> Decoder s (LegacyPParams BabbageEra)
forall a b. (a -> b) -> a -> b
$
      Decode ('Closed 'Dense) (LegacyPParams BabbageEra)
-> Decoder s (LegacyPParams BabbageEra)
forall t (w :: Wrapped) s. Typeable t => Decode w t -> Decoder s t
decode (Decode ('Closed 'Dense) (LegacyPParams BabbageEra)
 -> Decoder s (LegacyPParams BabbageEra))
-> Decode ('Closed 'Dense) (LegacyPParams BabbageEra)
-> Decoder s (LegacyPParams BabbageEra)
forall a b. (a -> b) -> a -> b
$
        (Coin
 -> Coin
 -> Word32
 -> Word32
 -> Word16
 -> Coin
 -> Coin
 -> EpochInterval
 -> Word16
 -> NonNegativeInterval
 -> UnitInterval
 -> UnitInterval
 -> Version
 -> Natural
 -> Coin
 -> CoinPerByte
 -> CostModels
 -> Prices
 -> OrdExUnits
 -> OrdExUnits
 -> Natural
 -> Natural
 -> Natural
 -> LegacyPParams BabbageEra)
-> Decode
     ('Closed 'Dense)
     (Coin
      -> Coin
      -> Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall t. t -> Decode ('Closed 'Dense) t
RecD Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> Version
-> Natural
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> LegacyPParams BabbageEra
mkLegacyBabbagePParams
          Decode
  ('Closed 'Dense)
  (Coin
   -> Coin
   -> Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 22)) Coin
-> Decode
     ('Closed 'Dense)
     (Coin
      -> Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 22)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- bppMinFeeA
          Decode
  ('Closed 'Dense)
  (Coin
   -> Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 21)) Coin
-> Decode
     ('Closed 'Dense)
     (Word32
      -> Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 21)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- bppMinFeeB
          Decode
  ('Closed 'Dense)
  (Word32
   -> Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 20)) Word32
-> Decode
     ('Closed 'Dense)
     (Word32
      -> Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 20)) Word32
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- bppMaxBBSize
          Decode
  ('Closed 'Dense)
  (Word32
   -> Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 19)) Word32
-> Decode
     ('Closed 'Dense)
     (Word16
      -> Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 19)) Word32
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- bppMaxTxSize
          Decode
  ('Closed 'Dense)
  (Word16
   -> Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 18)) Word16
-> Decode
     ('Closed 'Dense)
     (Coin
      -> Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 18)) Word16
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- bppMaxBHSize
          Decode
  ('Closed 'Dense)
  (Coin
   -> Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 17)) Coin
-> Decode
     ('Closed 'Dense)
     (Coin
      -> EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 17)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- bppKeyDeposit
          Decode
  ('Closed 'Dense)
  (Coin
   -> EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 16)) Coin
-> Decode
     ('Closed 'Dense)
     (EpochInterval
      -> Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 16)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- bppPoolDeposit
          Decode
  ('Closed 'Dense)
  (EpochInterval
   -> Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 15)) EpochInterval
-> Decode
     ('Closed 'Dense)
     (Word16
      -> NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 15)) EpochInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- bppEMax
          Decode
  ('Closed 'Dense)
  (Word16
   -> NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 14)) Word16
-> Decode
     ('Closed 'Dense)
     (NonNegativeInterval
      -> UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 14)) Word16
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- bppNOpt
          Decode
  ('Closed 'Dense)
  (NonNegativeInterval
   -> UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 13)) NonNegativeInterval
-> Decode
     ('Closed 'Dense)
     (UnitInterval
      -> UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 13)) NonNegativeInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- bppA0
          Decode
  ('Closed 'Dense)
  (UnitInterval
   -> UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 12)) UnitInterval
-> Decode
     ('Closed 'Dense)
     (UnitInterval
      -> Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 12)) UnitInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- bppRho
          Decode
  ('Closed 'Dense)
  (UnitInterval
   -> Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 11)) UnitInterval
-> Decode
     ('Closed 'Dense)
     (Version
      -> Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 11)) UnitInterval
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- bppTau
          Decode
  ('Closed 'Dense)
  (Version
   -> Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 10)) Version
-> Decode
     ('Closed 'Dense)
     (Natural
      -> Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 10)) Version
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- pvMajor bppProtocolVersion
          Decode
  ('Closed 'Dense)
  (Natural
   -> Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 9)) Natural
-> Decode
     ('Closed 'Dense)
     (Coin
      -> CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 9)) Natural
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- pvMinor bppProtocolVersion
          Decode
  ('Closed 'Dense)
  (Coin
   -> CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 8)) Coin
-> Decode
     ('Closed 'Dense)
     (CoinPerByte
      -> CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 8)) Coin
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- bppMinPoolCost
          Decode
  ('Closed 'Dense)
  (CoinPerByte
   -> CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 7)) CoinPerByte
-> Decode
     ('Closed 'Dense)
     (CostModels
      -> Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 7)) CoinPerByte
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- bppCoinsPerUTxOByte
          Decode
  ('Closed 'Dense)
  (CostModels
   -> Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 6)) CostModels
-> Decode
     ('Closed 'Dense)
     (Prices
      -> OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 6)) CostModels
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- bppCostModels
          Decode
  ('Closed 'Dense)
  (Prices
   -> OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 5)) Prices
-> Decode
     ('Closed 'Dense)
     (OrdExUnits
      -> OrdExUnits
      -> Natural
      -> Natural
      -> Natural
      -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 5)) Prices
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- bppPrices
          Decode
  ('Closed 'Dense)
  (OrdExUnits
   -> OrdExUnits
   -> Natural
   -> Natural
   -> Natural
   -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 4)) OrdExUnits
-> Decode
     ('Closed 'Dense)
     (OrdExUnits
      -> Natural -> Natural -> Natural -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 4)) OrdExUnits
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- bppMaxTxExUnits
          Decode
  ('Closed 'Dense)
  (OrdExUnits
   -> Natural -> Natural -> Natural -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 3)) OrdExUnits
-> Decode
     ('Closed 'Dense)
     (Natural -> Natural -> Natural -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 3)) OrdExUnits
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- bppMaxBlockExUnits
          Decode
  ('Closed 'Dense)
  (Natural -> Natural -> Natural -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 2)) Natural
-> Decode
     ('Closed 'Dense) (Natural -> Natural -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 2)) Natural
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- maxValSize
          Decode
  ('Closed 'Dense) (Natural -> Natural -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 1)) Natural
-> Decode ('Closed 'Dense) (Natural -> LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 1)) Natural
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- collateralPercentage
          Decode ('Closed 'Dense) (Natural -> LegacyPParams BabbageEra)
-> Decode ('Closed (ZonkAny 0)) Natural
-> Decode ('Closed 'Dense) (LegacyPParams BabbageEra)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode ('Closed w) a -> Decode w1 t
<! Decode ('Closed (ZonkAny 0)) Natural
forall t (w :: Wrapped). DecCBOR t => Decode w t
From -- maxCollateralInputs
   where
    mkLegacyBabbagePParams :: Coin
-> Coin
-> Word32
-> Word32
-> Word16
-> Coin
-> Coin
-> EpochInterval
-> Word16
-> NonNegativeInterval
-> UnitInterval
-> UnitInterval
-> Version
-> Natural
-> Coin
-> CoinPerByte
-> CostModels
-> Prices
-> OrdExUnits
-> OrdExUnits
-> Natural
-> Natural
-> Natural
-> LegacyPParams BabbageEra
mkLegacyBabbagePParams Coin
a Coin
b Word32
c Word32
d Word16
e Coin
f Coin
g EpochInterval
h Word16
i NonNegativeInterval
j UnitInterval
k UnitInterval
l Version
m Natural
n Coin
o CoinPerByte
p CostModels
q Prices
r OrdExUnits
s OrdExUnits
t Natural
u Natural
v Natural
w =
      PParams BabbageEra -> LegacyPParams BabbageEra
forall era. PParams era -> LegacyPParams era
LegacyPParams (PParams BabbageEra -> LegacyPParams BabbageEra)
-> PParams BabbageEra -> LegacyPParams BabbageEra
forall a b. (a -> b) -> a -> b
$
        PParamsHKD Identity BabbageEra -> PParams BabbageEra
forall era. PParamsHKD Identity era -> PParams era
PParams (PParamsHKD Identity BabbageEra -> PParams BabbageEra)
-> PParamsHKD Identity BabbageEra -> PParams BabbageEra
forall a b. (a -> b) -> a -> b
$
          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
BabbagePParams @Identity @BabbageEra Coin
HKD Identity Coin
a Coin
HKD Identity Coin
b Word32
HKD Identity Word32
c Word32
HKD Identity Word32
d Word16
HKD Identity Word16
e Coin
HKD Identity Coin
f Coin
HKD Identity Coin
g EpochInterval
HKD Identity EpochInterval
h Word16
HKD Identity Word16
i HKD Identity NonNegativeInterval
NonNegativeInterval
j HKD Identity UnitInterval
UnitInterval
k HKD Identity UnitInterval
UnitInterval
l (Version -> Natural -> ProtVer
ProtVer Version
m Natural
n) Coin
HKD Identity Coin
o CoinPerByte
HKD Identity CoinPerByte
p CostModels
HKD Identity CostModels
q Prices
HKD Identity Prices
r OrdExUnits
HKD Identity OrdExUnits
s OrdExUnits
HKD Identity OrdExUnits
t Natural
HKD Identity Natural
u Natural
HKD Identity Natural
v Natural
HKD Identity Natural
w

instance ToCBOR (LegacyPParams ConwayEra) where
  toCBOR :: LegacyPParams ConwayEra -> Encoding
toCBOR = PParams ConwayEra -> Encoding
forall a. ToCBOR a => a -> Encoding
toCBOR (PParams ConwayEra -> Encoding)
-> (LegacyPParams ConwayEra -> PParams ConwayEra)
-> LegacyPParams ConwayEra
-> Encoding
forall b c a. (b -> c) -> (a -> b) -> a -> c
. LegacyPParams ConwayEra -> PParams ConwayEra
forall era. LegacyPParams era -> PParams era
unLegacyPParams

instance FromCBOR (LegacyPParams ConwayEra) where
  fromCBOR :: forall s. Decoder s (LegacyPParams ConwayEra)
fromCBOR = PParams ConwayEra -> LegacyPParams ConwayEra
forall era. PParams era -> LegacyPParams era
LegacyPParams (PParams ConwayEra -> LegacyPParams ConwayEra)
-> Decoder s (PParams ConwayEra)
-> Decoder s (LegacyPParams ConwayEra)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Decoder s (PParams ConwayEra)
forall s. Decoder s (PParams ConwayEra)
forall a s. FromCBOR a => Decoder s a
fromCBOR

instance ToCBOR (LegacyPParams DijkstraEra) where
  toCBOR :: LegacyPParams DijkstraEra -> Encoding
toCBOR = PParams DijkstraEra -> Encoding
forall a. ToCBOR a => a -> Encoding
toCBOR (PParams DijkstraEra -> Encoding)
-> (LegacyPParams DijkstraEra -> PParams DijkstraEra)
-> LegacyPParams DijkstraEra
-> Encoding
forall b c a. (b -> c) -> (a -> b) -> a -> c
. LegacyPParams DijkstraEra -> PParams DijkstraEra
forall era. LegacyPParams era -> PParams era
unLegacyPParams

instance FromCBOR (LegacyPParams DijkstraEra) where
  fromCBOR :: forall s. Decoder s (LegacyPParams DijkstraEra)
fromCBOR = PParams DijkstraEra -> LegacyPParams DijkstraEra
forall era. PParams era -> LegacyPParams era
LegacyPParams (PParams DijkstraEra -> LegacyPParams DijkstraEra)
-> Decoder s (PParams DijkstraEra)
-> Decoder s (LegacyPParams DijkstraEra)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Decoder s (PParams DijkstraEra)
forall s. Decoder s (PParams DijkstraEra)
forall a s. FromCBOR a => Decoder s a
fromCBOR