From ab166f463e7ea9eca756fd0806fe6e944ed436e9 Mon Sep 17 00:00:00 2001 From: Daniel Firth Date: Mon, 22 Jul 2024 09:30:42 +0000 Subject: [PATCH] PlutusV2 -> PlutusV3 --- hydra-cardano-api/src/Hydra/Cardano/Api.hs | 16 +- hydra-cluster/config/protocol-parameters.json | 255 +++++++++++++++- .../src/Hydra/Ledger/Cardano/Evaluate.hs | 270 ++++++++++------- hydra-plutus/scripts/mHead.plutus | 4 +- hydra-plutus/scripts/vCommit.plutus | 4 +- hydra-plutus/scripts/vHead.plutus | 4 +- hydra-plutus/scripts/vInitial.plutus | 4 +- hydra-plutus/src/Hydra/Contract/HeadTokens.hs | 4 +- hydra-plutus/test/Hydra/Plutus/GoldenSpec.hs | 4 +- hydra-test-utils/src/Test/Plutus/Validator.hs | 272 +++++++++++------- 10 files changed, 621 insertions(+), 216 deletions(-) diff --git a/hydra-cardano-api/src/Hydra/Cardano/Api.hs b/hydra-cardano-api/src/Hydra/Cardano/Api.hs index 08074d9f456..8251a4c497e 100644 --- a/hydra-cardano-api/src/Hydra/Cardano/Api.hs +++ b/hydra-cardano-api/src/Hydra/Cardano/Api.hs @@ -11,7 +11,7 @@ -- also get rid of era witnesses. -- -- NOTE: This module also uses the **latest plutus version** available --- (currently 'PlutusScriptV2'). So make sure that you give it a plutus script +-- (currently 'PlutusScriptV3'). So make sure that you give it a plutus script -- of the right version (e.g. when compiling and serializing plutus-tx). module Hydra.Cardano.Api ( -- * Common type-alias @@ -230,7 +230,7 @@ pattern ShelleyKeyWitness{shelleyKeyWitness} <- -- ** PlutusScript -type PlutusScript = Cardano.Api.PlutusScript PlutusScriptV2 +type PlutusScript = Cardano.Api.PlutusScript PlutusScriptV3 {-# COMPLETE PlutusScriptSerialised #-} pattern PlutusScriptSerialised :: ShortByteString -> PlutusScript @@ -242,7 +242,7 @@ pattern PlutusScriptSerialised{plutusScriptSerialised} <- -- ** Script -type Script = Cardano.Api.Script PlutusScriptV2 +type Script = Cardano.Api.Script PlutusScriptV3 {-# COMPLETE PlutusScript #-} pattern PlutusScript :: PlutusScript -> Script @@ -250,7 +250,7 @@ pattern PlutusScript{plutusScript} <- Cardano.Api.Shelley.PlutusScript _ plutusScript where PlutusScript = - Cardano.Api.Shelley.PlutusScript PlutusScriptV2 + Cardano.Api.Shelley.PlutusScript PlutusScriptV3 -- ** ScriptInEra @@ -258,7 +258,7 @@ type ScriptInEra = Cardano.Api.ScriptInEra Era -- ** ScriptLanguage -type ScriptLanguage = Cardano.Api.ScriptLanguage PlutusScriptV2 +type ScriptLanguage = Cardano.Api.ScriptLanguage PlutusScriptV3 {-# COMPLETE PlutusScriptLanguage #-} pattern PlutusScriptLanguage :: ScriptLanguage @@ -266,7 +266,7 @@ pattern PlutusScriptLanguage <- Cardano.Api.Shelley.PlutusScriptLanguage _ where PlutusScriptLanguage = - Cardano.Api.Shelley.PlutusScriptLanguage PlutusScriptV2 + Cardano.Api.Shelley.PlutusScriptLanguage PlutusScriptV3 -- ** ScriptWitness @@ -287,7 +287,7 @@ pattern PlutusScriptWitness } <- Cardano.Api.PlutusScriptWitness _ - PlutusScriptV2 + PlutusScriptV3 (PScript plutusScriptWitnessScript) plutusScriptWitnessDatum plutusScriptWitnessRedeemer @@ -296,7 +296,7 @@ pattern PlutusScriptWitness PlutusScriptWitness = Cardano.Api.PlutusScriptWitness scriptLanguageInEra - PlutusScriptV2 + PlutusScriptV3 . PScript -- ** Tx diff --git a/hydra-cluster/config/protocol-parameters.json b/hydra-cluster/config/protocol-parameters.json index 81027d9f3b9..179d01250d5 100644 --- a/hydra-cluster/config/protocol-parameters.json +++ b/hydra-cluster/config/protocol-parameters.json @@ -352,7 +352,260 @@ 38887044, 32947, 10 - ] + ], + "PlutusV3": [ + 100788, + 420, + 1, + 1, + 1000, + 173, + 0, + 1, + 1000, + 59957, + 4, + 1, + 11183, + 32, + 201305, + 8356, + 4, + 16000, + 100, + 16000, + 100, + 16000, + 100, + 16000, + 100, + 16000, + 100, + 16000, + 100, + 100, + 100, + 16000, + 100, + 94375, + 32, + 132994, + 32, + 61462, + 4, + 72010, + 178, + 0, + 1, + 22151, + 32, + 91189, + 769, + 4, + 2, + 85848, + 123203, + 7305, + -900, + 1716, + 549, + 57, + 85848, + 0, + 1, + 1, + 1000, + 42921, + 4, + 2, + 24548, + 29498, + 38, + 1, + 898148, + 27279, + 1, + 51775, + 558, + 1, + 39184, + 1000, + 60594, + 1, + 141895, + 32, + 83150, + 32, + 15299, + 32, + 76049, + 1, + 13169, + 4, + 22100, + 10, + 28999, + 74, + 1, + 28999, + 74, + 1, + 43285, + 552, + 1, + 44749, + 541, + 1, + 33852, + 32, + 68246, + 32, + 72362, + 32, + 7243, + 32, + 7391, + 32, + 11546, + 32, + 85848, + 123203, + 7305, + -900, + 1716, + 549, + 57, + 85848, + 0, + 1, + 90434, + 519, + 0, + 1, + 74433, + 32, + 85848, + 123203, + 7305, + -900, + 1716, + 549, + 57, + 85848, + 0, + 1, + 1, + 85848, + 123203, + 7305, + -900, + 1716, + 549, + 57, + 85848, + 0, + 1, + 955506, + 213312, + 0, + 2, + 270652, + 22588, + 4, + 1457325, + 64566, + 4, + 20467, + 1, + 4, + 0, + 141992, + 32, + 100788, + 420, + 1, + 1, + 81663, + 32, + 59498, + 32, + 20142, + 32, + 24588, + 32, + 20744, + 32, + 25933, + 32, + 24623, + 32, + 43053543, + 10, + 53384111, + 14333, + 10, + 43574283, + 26308, + 10, + 16000, + 100, + 16000, + 100, + 962335, + 18, + 2780678, + 6, + 442008, + 1, + 52538055, + 3756, + 18, + 267929, + 18, + 76433006, + 8868, + 18, + 52948122, + 18, + 1995836, + 36, + 3227919, + 12, + 901022, + 1, + 166917843, + 4307, + 36, + 284546, + 36, + 158221314, + 26549, + 36, + 74698472, + 36, + 333849714, + 1, + 254006273, + 72, + 2174038, + 72, + 2261318, + 64571, + 4, + 207616, + 8310, + 4, + 1293828, + 28716, + 63, + 0, + 1, + 1006041, + 43623, + 251, + 0, + 1 + ] }, "maxBlockBodySize": 90112, "maxBlockExecutionUnits": { diff --git a/hydra-node/src/Hydra/Ledger/Cardano/Evaluate.hs b/hydra-node/src/Hydra/Ledger/Cardano/Evaluate.hs index 647f55f2b9e..8e90b02a662 100644 --- a/hydra-node/src/Hydra/Ledger/Cardano/Evaluate.hs +++ b/hydra-node/src/Hydra/Ledger/Cardano/Evaluate.hs @@ -24,7 +24,7 @@ import Cardano.Ledger.BaseTypes (BoundedRational (boundRational), ProtVer (..), import Cardano.Ledger.Coin (Coin (Coin)) import Cardano.Ledger.Core (PParams, ppMaxTxSizeL) import Cardano.Ledger.Plutus (PlutusLanguage (decodePlutusRunnable, mkTermToEvaluate), PlutusWithContext (..)) -import Cardano.Ledger.Plutus.Language (Language (PlutusV2)) +import Cardano.Ledger.Plutus.Language (Language (PlutusV3)) import Cardano.Ledger.Val (Val ((<+>)), (<×>)) import Cardano.Slotting.EpochInfo (EpochInfo, fixedEpochInfo) import Cardano.Slotting.Slot (EpochNo (EpochNo), EpochSize (EpochSize), SlotNo (SlotNo)) @@ -274,7 +274,7 @@ pparams = , prMem = fromJust $ boundRational $ 577 % 10000 } & ppProtocolVersionL .~ ProtVer{pvMajor = natVersion @8, pvMinor = 0} - & ppCostModelsL .~ mkCostModels (Map.fromList [(PlutusV2, plutusV2CostModel)]) + & ppCostModelsL .~ mkCostModels (Map.fromList [(PlutusV3, plutusV3CostModel)]) maxTxSize :: Natural maxTxSize = 16384 @@ -429,184 +429,260 @@ genPointInTimeAfter deadline = do -- ** Plutus cost model fixtures -- | Current (2023-08-04) mainnet PlutusV2 cost model. -plutusV2CostModel :: CostModel -plutusV2CostModel = +plutusV3CostModel :: CostModel +plutusV3CostModel = either (error . show) id $ mkCostModel - PlutusV2 - [ 205665 - , 812 + PlutusV3 + [ 100788 + , 420 , 1 , 1 , 1000 - , 571 + , 173 , 0 , 1 , 1000 - , 24177 + , 59957 , 4 , 1 - , 1000 + , 11183 , 32 - , 117366 - , 10475 + , 201305 + , 8356 , 4 - , 23000 + , 16000 , 100 - , 23000 + , 16000 , 100 - , 23000 + , 16000 , 100 - , 23000 + , 16000 , 100 - , 23000 + , 16000 , 100 - , 23000 + , 16000 , 100 , 100 , 100 - , 23000 + , 16000 , 100 - , 19537 + , 94375 , 32 - , 175354 + , 132994 , 32 - , 46417 + , 61462 , 4 - , 221973 - , 511 + , 72010 + , 178 , 0 , 1 - , 89141 + , 22151 , 32 - , 497525 - , 14068 + , 91189 + , 769 , 4 , 2 - , 196500 - , 453240 - , 220 + , 85848 + , 123203 + , 7305 + , -900 + , 1716 + , 549 + , 57 + , 85848 , 0 , 1 , 1 , 1000 - , 28662 + , 42921 , 4 , 2 - , 245000 - , 216773 - , 62 + , 24548 + , 29498 + , 38 , 1 - , 1060367 - , 12586 + , 898148 + , 27279 , 1 - , 208512 - , 421 + , 51775 + , 558 , 1 - , 187000 + , 39184 , 1000 - , 52998 + , 60594 , 1 - , 80436 + , 141895 , 32 - , 43249 + , 83150 , 32 - , 1000 + , 15299 , 32 - , 80556 + , 76049 , 1 - , 57667 + , 13169 , 4 - , 1000 + , 22100 , 10 - , 197145 - , 156 + , 28999 + , 74 , 1 - , 197145 - , 156 + , 28999 + , 74 , 1 - , 204924 - , 473 + , 43285 + , 552 , 1 - , 208896 - , 511 + , 44749 + , 541 , 1 - , 52467 + , 33852 , 32 - , 64832 + , 68246 , 32 - , 65493 + , 72362 , 32 - , 22558 + , 7243 , 32 - , 16563 + , 7391 , 32 - , 76511 + , 11546 , 32 - , 196500 - , 453240 - , 220 + , 85848 + , 123203 + , 7305 + , -900 + , 1716 + , 549 + , 57 + , 85848 , 0 , 1 - , 1 - , 69522 - , 11687 + , 90434 + , 519 , 0 , 1 - , 60091 + , 74433 , 32 - , 196500 - , 453240 - , 220 + , 85848 + , 123203 + , 7305 + , -900 + , 1716 + , 549 + , 57 + , 85848 , 0 , 1 , 1 - , 196500 - , 453240 - , 220 + , 85848 + , 123203 + , 7305 + , -900 + , 1716 + , 549 + , 57 + , 85848 , 0 , 1 - , 1 - , 1159724 - , 392670 + , 955506 + , 213312 , 0 , 2 - , 806990 - , 30482 + , 270652 + , 22588 , 4 - , 1927926 - , 82523 + , 1457325 + , 64566 , 4 - , 265318 - , 0 + , 20467 + , 1 , 4 , 0 - , 85931 + , 141992 , 32 - , 205665 - , 812 + , 100788 + , 420 , 1 , 1 - , 41182 + , 81663 , 32 - , 212342 + , 59498 , 32 - , 31220 + , 20142 , 32 - , 32696 + , 24588 , 32 - , 43357 + , 20744 , 32 - , 32247 + , 25933 , 32 - , 38314 + , 24623 , 32 - , 35892428 + , 43053543 , 10 - , 57996947 - , 18975 + , 53384111 + , 14333 , 10 - , 38887044 - , 32947 + , 43574283 + , 26308 , 10 + , 16000 + , 100 + , 16000 + , 100 + , 962335 + , 18 + , 2780678 + , 6 + , 442008 + , 1 + , 52538055 + , 3756 + , 18 + , 267929 + , 18 + , 76433006 + , 8868 + , 18 + , 52948122 + , 18 + , 1995836 + , 36 + , 3227919 + , 12 + , 901022 + , 1 + , 166917843 + , 4307 + , 36 + , 284546 + , 36 + , 158221314 + , 26549 + , 36 + , 74698472 + , 36 + , 333849714 + , 1 + , 254006273 + , 72 + , 2174038 + , 72 + , 2261318 + , 64571 + , 4 + , 207616 + , 8310 + , 4 + , 1293828 + , 28716 + , 63 + , 0 + , 1 + , 1006041 + , 43623 + , 251 + , 0 + , 1 ] diff --git a/hydra-plutus/scripts/mHead.plutus b/hydra-plutus/scripts/mHead.plutus index 66cdc047276..a08e8dbbc8a 100644 --- a/hydra-plutus/scripts/mHead.plutus +++ b/hydra-plutus/scripts/mHead.plutus @@ -1,5 +1,5 @@ { - "type": "PlutusScriptV2", - "description": "hydra-mHead-0.17.0-348-gd8c94a18c3", + "type": "PlutusScriptV3", + "description": "hydra-mHead-0.17.0-60-gd6040f592", "cborHex": "5911c65911c30100003332323233223322323233223232323232323232323232222225335325335323232325335333573400203a0382244002264a66a666ae6800407807444880084c07d24103505431003370e900100199b8748000008d55cf0011aab9d0013754006266014921034d30360053353330082232333573400203803666e3c008004c024004c02cd40048800884cc074894cd40044070884d4008894cd4c8ccd5cd00081081019b88001480004c01800c407c004406054cc8d4cc02d241034d303100323301e225335001101c22153353500a2235004223253353335734002048046264666ae68004094090cdc3802001081199b8f004002101f130040010013301d225335001101a22133501b350022200230040013500122222222222200c15332323232323235330114901034d30320032333573400204204066e1cc94cd4ccc04088c8ccd5cd00081201199b8f00200150073013008213002001148000c8cc88c88c008004c098894cd4004400c884d400888cc020004c01800cc00488008c004880048cc00488cdc0001000a400066e0000520021325335330124901034d3033003302422533500110222213500222325335333573400205004e2602c0042600e00866e3c00801cd54014880044c94cd54cc8d4cc0512401034d30340032333573400204804666e1c010cc0184488c88c008004c0a0894cd4004400c884cc018008c0100040044cc06494cd4ccc04c88c8ccd5cd00081381319b8f002001004001215335001130264901034d303800221350022253350031533532333573400205405266e1c005200210291302a491034d303800221302c491034d30380013025491034d303700001330252253350011022221335023350022200130040010011021153353301825333500115016215335301b00121330164901034d31320032333573400204c04a66e3c0040144c0952401034d31320021501733025225335001102222133502335002220023004001001133013491034d303500533532333573400204604466e3cc01088800c0084d4c01088800888d403c88c94cd4ccd5cd000813813099199ab9a0010280273370e008004204c66e3c010008408440844084cc01803802040814018c00488800554d5400888ccd400854054854cd4cccccc06400488c94c8c8c8c8c8cd4ccd5cd0030148140a99a9999aab9f0072502323232302633027002001357440126ae840200ac84d4004894cd4c014008854cd4cccd55cf80112813919191815198158010009aba20043574200605e426a00244a66a66a01601800442a66a6666aae7c008940ac8c8c8c0b8cc0bc008004d5d10021aba10030332135001225335302b00221533533335573e0044a05e4646460640046ae88010d5d080181b90a99a9999998170009119299a999ab9a0010390381533533335573e0044a06646464606c6606e0040026ae88010d5d080181d909a80091299a99999981a0011119299a999ab9a00103f03e1533533335573e0044a0724646460780046ae88010d5d080182090a99a981b80090981d8008a81c8a81c0a81c19b8748000008940d8940d8940d8940d8854cd4cccd55cf8011281b91919181d0011aba20043574200607e42a66a6030002426072660760060022a06e2a06c2a06a2a0642a06466e1d20000022503025030250302503021303112222333300200f00b0070051300e4984c035261300c4984c02526130084984c01526130044984c00526130014988c94c8cd4ccd5cd0010158150a99a9999aab9f00925025232323028002357440166ae840280b4854cd4cccccc09000488c94cd4ccd5cd0008178170a99a9999aab9f0022502923232302c3302d002001357440086ae8400c0c484d4004894cd4c0a4008854cd4cccd55cf80112816919191818198188010009aba20043574200606a426a00244a66a66a02202400442a66a6666aae7c008940c48c8c8c0d0cc0d4008004d5d10021aba10030392135001225335301300221533533335573e0044a06a464646070660720040026ae88010d5d080181e909a80091299a980c00110a99a9999aab9f0022503923232303c002357440086ae8400c104854cd4c0dc00484c0ec48ccccc004040030020010008540e4540e0540dc540d0540cc540c0540bc540b0540ac540a0540a0cdc3a40000044a04c4a04c4a04c4a04c42604e24444600200a260049309800a4c260029311929919a999ab9a00202d02c1533533335573e0164a04e4646460540046ae88034d5d080601790a99a9999998130009119299a999ab9a0010310301533533335573e0044a05646464605c6605e0040026ae88010d5d0801819909a80091299a981580110a99a9999aab9f0022502f23232303233033002001357440086ae8400c0dc84d400488c94cd4cc00405400c854cd4cccd55cf8019281a11919181b9981c0010009aba200535742008078426a00244a66a602c00442a66a6666aae7c008940e08c8c8c0eccc0f0008004d5d10021aba10030402135001225335301b00221533533335573e0044a07846464607e660800040026ae88010d5d0801822109a80091299a980f80110a99a9999aab9f0022504023232304333044002001357440086ae8400c12084d4004894cd4c100008854cd4cccd55cf80112822119191823998240010009aba200435742006098426a00244a66a66666608a0044464a66a666ae6800414013c4c12941244c94cd4ccd5cd0008288280a99a9999aab9f0032504b23232304e0023574400a6ae8401014c854cd4c12400484c134c1340045412c5412854128cdc3a400000666e1d20020022504725047250472504721533533335573e0044a090464646096660980040026ae88010d5d0801828109a80091299a9980c82400110a99a9999aab9f0022504c23232304f002357440086ae8400c150854cd4c0b400484c13848ccccccccc004084070060050040030020010008541305412c541285411c541185410c54108540fc540f8540ec540e8540dc540d8540cc540c9404c540b8540b4540a8540a8cdc3a40000044a0504a0504a0504a05042605224444600800a260049309800a4c2600293119299a999ab9a00102e02d1302812222003150273370e900300619b8748010028cdc3a400401046666660400024464a66a666ae680040ac0a854cd4cccd55cf801128129191918140011aba20043574200605a42a66a600c00242604e0022a04a2a0482a04866e1d200000225022250222502225022233333301f001225022250212502123022001250211322322333333021001225024250230022502325023302a2233335573e002400a4a66a60086ae84008854cd4c010d5d100190981319a8148010008a812099281218019aba200202b301f02325335301c0012130200011501e3370e90000011280d9280d9280d9280d90a9999a80090a80b8a80b1111099091998008020018011980488911911801000981591299a800880191099803001180200080190a80b898112481034d3039002150162335500122337000029001240002a66a660020100062603a9201034d313100221533500110022213021491034d3131002233020225335001101d22132533535003222235004223350022502223253353335734002054052260486604a00c00e2a04666e3c00403884cd40800040084004c010004d40048888888888880284c0280084064d4004880084060c8c8c8c94cd4ccd5cd00080e00d89919191991091980080180119191919299a999ab9a001023022132323232323232323232332333233333233323332222222222221233333333333300100d00c00b00a009008007006005004003002330032323232325335333573400206c06a26644246600200600460306ae84008c018d5d09aba200213037490103505431003370e90000011aab9e00235573a0026ea8004d5d08081aba100e330030013574201a464646464a66a666ae680040d40d04c8c8c8cccc888848cccc00401401000c008c8c8c8c94cd4ccd5cd00081e01d89991091980080180118101aba10023300501f357426ae880084c0f5240103505431003370e90000011aab9e00235573a0026ea8d5d080298049aba1003323232325335333573400207807622444006264a66a666ae680040f40f04c84888c004010dd71aba10031325335333573400207c07a264244460040086ae840104c0fd24103505431003370e900200219b874800800ccdc3a40000046aae78008d55ce8009baa3574200466002eb8d5d09aba200222323232325335333573400207a0782a06c264a66a666ae680040f80f44c0e0c01cd5d08018981fa4903505431003370e900000199b8748008008d55cf0011aab9d00137540026ae88004d5d10010981b24903505431003370e90000011aab9e00235573a0026ea8004c004d5d080598009aba100a3002300275a6ae84020d5d08039aba10063300175c6ae840148c88c008dd60009819111999aab9f0012030233502f30043574200460066ae880080ccd5d08019980090009aba10022322300237560026062446666aae7c00480bc8c8cd40bccc0b4dd71aab9d001300535573c00260086ae8800cd5d08010191aba1357440026ae88004d5d10009aba2001357440026ae88004d5d10009aba2001357440026ae88004d5d10010981224903505431003370e90000011aab9e00235573a0026ea8d5d080299191919299a999ab9a001023022132122223003005375c6ae840084c94cd4ccd5cd00081201189909111180080298031aba10031325335333573400204a04826424444600400a60106ae840104c94cd4ccd5cd00081301289909111180200299191919299a999ab9a00102a029132122222223005008300d35742004264a66a666ae680040ac0a84c848888888c01c020c038d5d0801899299a999ab9a00102c02b133221222222233006009008300f357420086eb8d5d09aba20041325335333573400205a0582664424444444660040120106eb8d5d08029bae357426ae880144c94cd4ccd5cd0008170168999109111111198008048041bae3574200c6eb4d5d09aba20061325335333573400205e05c224444444008264a66a666ae680040c00bc44888888800c4c0c524103505431003370e900600419b874802801ccdc3a401000c66e1d20060053370e900200219b874800800ccdc3a40000046aae78008d55ce8009baa3574200a2604e920103505431003370e900300299b8748010010cdc3a400400666e1d200000235573c0046aae74004dd51aba13574400a464646464a66a666ae6800408c0884cc07cc8c8c8c94cd4ccd5cd00081381309bae357420042605092103505431003370e90000011aab9e00235573a0026ea8d5d08011bad357426ae880084c09124103505431003370e90000011aab9e00235573a0026ea80048c8c8c8c94cd4ccd5cd000811010899091180100198031aba10021325335333573400204604426466644424466600200a0080066eb4d5d08021bad357420026eb4d5d09aba20013574400626048920103505431003370e900100199b8748000008d55cf0011aab9d0013754002464646464a66a666ae680040840804c8488c00800cdd71aba10021325335333573400204404226424460020066eb8d5d080189811a48103505431003370e900100199b8748000008d55cf0011aab9d00137540022603a920103505431003370e90000011aab9e00235573a0026ea80045261301949103505435003015225335001101322135002223253353335734002032030264666ae68004068064cdc3801240042600e00866e3c00922010b48796472614865616456310022322300200130162253350011500e22135002225335330080020071301300113006003235001223233335002250022001250022500213263357389201024c68000152253350011011133573800402046a0024444444444440102601c921034d3132001300d491034d3039001300c491034d31300023223002001300e225335001100d2215335300500213004001100e2333333002001225005250042500425004230050012222223333333574800c4646600e6aae74004d55cf0009baa00723005375600e460086eb001c8c00cdd6803918011bae007010212230020031122001221233001003002221233001003002122002122122330010040031220021220012326335738002004240024646002002460044660040040029111c2fac819a1f4f14e29639d1414220d2a18b6abd6b8e444d88d0dda8ff0048811c7ae23bc9f0833a5689b9fc812dd92fbe9dac881a632f14b28e8eb8db0001" } diff --git a/hydra-plutus/scripts/vCommit.plutus b/hydra-plutus/scripts/vCommit.plutus index fe6650bee67..93b0590f93a 100644 --- a/hydra-plutus/scripts/vCommit.plutus +++ b/hydra-plutus/scripts/vCommit.plutus @@ -1,5 +1,5 @@ { - "type": "PlutusScriptV2", - "description": "hydra-vCommit-0.17.0-348-gd8c94a18c3", + "type": "PlutusScriptV3", + "description": "hydra-vCommit-0.17.0-60-gd6040f592", "cborHex": "5906cc5906c9010000323233223322323232323323232322222533533300430050033232325333573466e1d2000002112200115333573466e1d200200211220021300c00b35573c0046aae74004dd50011991919191911919192999ab9a3370e90000010999109198008018011919192999ab9a3370e9000001099191919191919191919199999999999911111111111091999999999998008068060058050048040038030028020018011980e11919192999ab9a3370e900000109991091980080180118109aba10013016357426ae880044c08c088d55cf0011aab9d00137540026ae8402cd5d08051980e0091aba100933301675ca02a6ae84020ccc059d7280a9aba10073574200c6ae84014d5d08021980e3ae357420066ae84008ccc059d710009aba1001357426ae88004d5d10009aba2001357440026ae88004d5d10009aba2001357440026ae88004d5d10009aba20011301501435573c0046aae74004dd51aba10013232325333573466e1d2000002132122223003005375c6ae8400454ccd5cd19b87480080084c848888c004014c04cd5d08008a999ab9a3370e900200109909111180100298049aba100115333573466e1d20060021321222230040053232325333573466e1d2000002132122222223005008300c357420022a666ae68cdc3a400400426424444444600e01060186ae8400454ccd5cd19b87480100084cc8848888888cc018024020c030d5d08009bae357426ae8800454ccd5cd19b87480180084cc8848888888cc008024020dd71aba1001375c6ae84d5d10008a999ab9a3370e90040010999109111111198008048041bae357420026eb4d5d09aba200115333573466e1d200a00211222222200415333573466e1d200c0021122222220031301801735573c0046aae74004dd51aba10011301501435573c0046aae74004dd51aba135744002260240226aae78008d55ce8009baa0013223232325333573466e1d200000213232333322221233330010050040030023232325333573466e1d2000002133221233001003002300c35742002660140166ae84d5d10008980b80b1aab9e00235573a0026ea8d5d0801999805bae500a35742004646464a666ae68cdc3a4000004224440062a666ae68cdc3a4004004264244460020086eb8d5d08008a999ab9a3370e9002001099091118010021aba10011301701635573c0046aae74004dd51aba10013300775c6ae84d5d10009aba200135744002260240226aae78008d55ce8009baa001223232325333573466e1d2002002112200115333573466e1d20000021321223002003300535742002260240226aae78008d55ce8009baa00123232325333573466e1d200000213212230020033005357420022a666ae68cdc3a400400426466644424466600200a0080066eb4d5d08011bad357420026eb4d5d09aba2001357440022602001e6aae78008d55ce8009baa00123232325333573466e1d20000021321223002003375c6ae8400454ccd5cd19b87480080084c8488c00400cdd71aba10011300f00e35573c0046aae74004dd5000899800bae75a4464460046eac004c05088cccd55cf800900a91919a80a9991091980080180118031aab9d001300535573c00260086ae8800cd5d08010070008a4c2601292103505435003223232325333573466e1d200000213233322212333001004003002375c6ae84008c018d5d08009bae357426ae88004d5d1000898048041aab9e00235573a0026ea8004c0048c8c8c94ccd5cd19b87480000084cc8848cc00400c008c018d5d08009bae357426ae880044c02001cd55cf0011aab9d0013754002464460046eb0004c03488cccd55cf8009007119a80698021aba100230033574400400e4646464a666ae68cdc3a4000004266442466002006004646464a666ae68cdc3a400000426eb8d5d0800898048041aab9e00235573a0026ea8d5d08009bad357426ae880044c018014d55cf0011aab9d001375400292103505431003232222350032223232533500713300a49010343303100300135300900622222222222200813300a49010343303200300235533535300900622222222222200a1300b491035054380022100222220033013225335001101022135002225333573466e3c0080204c0480044c01800cc048894cd4004403c884d4008894ccd5cd19b8f0020071301200113006003235001220022253350011008133573800400e464c66ae7000400848004c01c894cd40044010884d4008894ccd5cd19b8f00200c1333573466e1d2001001009008130060033006225335001100322135002225333573466e3c00802c4ccd5cd19b874800800402001c4c01800c488008488004488008488488cc00401000d22010b4879647261486561645631002323001001230022330020020011" } diff --git a/hydra-plutus/scripts/vHead.plutus b/hydra-plutus/scripts/vHead.plutus index 3d720529648..11061265387 100644 --- a/hydra-plutus/scripts/vHead.plutus +++ b/hydra-plutus/scripts/vHead.plutus @@ -1,5 +1,5 @@ { - "type": "PlutusScriptV2", - "description": "hydra-vHead-0.17.0-348-gd8c94a18c3", + "type": "PlutusScriptV3", + "description": "hydra-vHead-0.17.0-60-gd6040f592", "cborHex": "5927ce5927cb010000323233322232332232323232323322323233223232323322323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232333322223232323232323232323232323232323232323232323232323232323232323232222533532323253233335004323232323221533333350091306b49884c1b1261306b498c8c8c8c8854cd4c061402c54cd54ccd5cd19b8735303000d2222222220065005107c13357389201034831330007b153355333573466e254024d40188888888880144cd5ce2481034833310007b107c1533500123003533533300d50053333301550045006500a35303100e22222222200435303100e222222222003001107d13357389201034833390007c22300453355335535303200f2222222223350032108701108701133300e500633333016500533702a00e900128059a9819007911111111002183c800801083e883f099ab9c491034834300007d107b107b107b3232322335001153353302100f500515335533533232230020013090012253350011081012215333573466e3c0140084208044c0100054031400841f84cd5ce2481034833380007d1535500d2222222222223535005220012233553335002215333573466e24005404c4234044cd5ce2481034833320008c011506115061153355335333502b08901501733509601501a5010108c011335738921034833360008b01153355335333573466e1cc1d9405cc1dd40602300422c0454ccd5cd19b8735304001d2222222220015012108c011335738921034833340008b0115333573466e1cd4c100074888888888004cdc028092808884600899ab9c491034833350008b011533533302a330910150185014330910135304001d2222222220075011330910135304001d2222222220095013153353303c5335304d01d21350012235001222200310970135533535501b22222222222200a130730392210022222003108c01133573892010248340008b01108b01108b01108b01108b01107d107d107d13500622222222200213500522222222200713500422222222200113500322222222200913500222222222200813500122222222200621306c498884d4028894cd4ccc06cd4008888888888888020d4014888888888024d4014888888888020c854cd54ccd5cd19b8f3023335017005500135006222222222004107c13357389201034834310007b15335533553500622222222233500321333573466e3c004c0b4c8cd408803c004cd40c403d402c21804214044ccd5cd19b8748000034214042100441f04cd5ce249034834320007b1350032222222222223535005220022253335002215333573466e24004d40548888888880044cd5ce2481034834330008a01108b011507615076107b107b13500222222222222200a107a13530290062222222220021353028005222222222008135302700422222222200515355001222222222222335004130544988854cd40044008884c161261350022200213065498888c8c8c8854c8cccccd402c540048540084d4028894cc8d54ccd5cd19b8f35303100d22222001302b355001222003107c1335738921034831370007b153355333573466e1d200035303100d22222002107c1335738921034832300007b1533533301a330810135303100d2222200400a330810135303100d2222200300b330810135303100d222220050091533553353302853500322222222222233500a10930122130780013232333075077002305200135004222222222222009355001222001107c1335738921034831390007b15335533530085335303d00d213500122350012222003108701107c1335738921034831360007b153355335333573466e1cd54004888008c1b00281f01ec41f04cd5ce249034831380007b153353301f00d00913018003107b107b107b107b107b107b130063500222222222222200c107a215002215002221500315333333500a13500922533533301a3500222222222222200800700832153353301e00c0081533533078302a50013022335016306850013500322222222222200a107b13357389201034831350007a107a133004085013500222222222222200c107921306d4984c1b12621306d49884c1b526221306e498c21c0488c894cd4004400c884d4008894cd4cc11402c0044cc020c018c12400400c4cc02001c00cc22404894cd4004400c884cd421804008c010004c21804894cd40044ccc10c20805200008201221323500322350032322253353303e350052222004353040011223500122220041007153353304700d005133304c3003304b005337009001001000899982600200119983b83c8009a802911100198470091299a800880191099a845808011802000980200098428091299a800883a9109a801112999ab9a3371e00400e260d20022600c0066464646442a666666a010260d4931919191910a99a980ba8050a99aa999ab9a3371266e04d4d4d5402888888888888801488004894ccd400884004541c0541c0d4d4d5402888888888888801488008894ccd400884004541bc541bd401041ec4cd5ce2481034832320007a153355333573466e1cd4c0bc030888888888004c8d403488d4008888888888888d4d401488004894ccd400884cdc00008090a83e8a83ea802083d899ab9c491034832330007a153353301e00c5003153355333573466e1cd4c0bc030888888888019400841ec4cd5ce249034831330007a153355333500121533533300c5006333330145004500335303000d22222222200535303000d22222222200435303000d222222222003001107c1335738921034832390007b153355333573466e1d2000500215333573466e1d200035302f00c2222222220051333573466e3cd4c0bc030888888888010d4018888880041ec1e841e841e841ec4cd5ce249034832380007a22153355335535303100e2222222223350032108601108601133300d500733333015500533702a00890011a98188071111111110029a9818807111111111002183c000801083e083e899ab9c491034833300007c153355335535302f00c22222222233500210840122108501107b13357389201034832360007a1533553353302b5335303c00c21350012235001222200310860135533535500a22222222222200a130620282210022222003107b133573892010248340007a1333019330800135302f00c2222222220085005330800135302f00c2222222220075004330800135302f00c2222222220095003107a107a107a107a107a107a107a107a135004222220021350032222200513500222222003135001222220041306a49884c1ad2632322153353330173307e350042222200450063307e350042222200335302e00a222220033307e5003500532153355333573466e1cd4c0bc02c88888008cdc024004a00620f4266ae7124103483231000791533533300a500733333012500650033500222200235302f00b2222200130753021500135002222003153355335330265335303b00b213500122350012222003108501333071073355335500813061027221002222200330705001107a133573892010248340007913301d00b50041079107910791335014350012220015335500713060491035054390022100110781350022222200213500122222005221306c4984d4c0a4014888880144d4c0a0010888880104d400c88d40088888888888880284d40088800888c894cd54cd4ccd5cd19b87300d004300e00107407313002335500b004001107310741335738920103483132000733083012253350011074221535002223353350072222223335734666e54020cdc51bb3375200c66e28dd99ba8005337146eccdd400219b8a37666ea400cdd99ba9533500221001104700107e07d0011300600310773232325333573466e1d20000021332212330010030023232325333573466e1d20000021323232323232323232323333333333332222222222221233333333333300100d00c00b00a0090080070060050040030023306705b35742016660ce0b66ae84028cc19c178d5d0804999831bae5062357420106660c6eb94188d5d08039983382d1aba100633306305f75a6ae84014c8c8c94ccd5cd19b87480000084cc8848cc00400c008c8c8c94ccd5cd19b87480000084cc8848cc00400c008cc179d69aba1001305d357426ae880044c1b01acd55cf0011aab9d00137546ae84004c8c8c94ccd5cd19b87480000084cc8848cc00400c008cc179d69aba1001305d357426ae880044c1b01acd55cf0011aab9d00137546ae84d5d1000898348341aab9e00235573a0026ea8d5d080219833bae357420066660c60b20ac6ae84008ccc18dd702b1aba1001305d357426ae88004d5d10009aba2001357440026ae88004d5d10009aba2001357440026ae88004d5d10009aba20011305c05b35573c0046aae74004dd51aba1001304c357426ae880044c164160d55cf0011aab9d0013754006646464a666ae68cdc3a4000004224444440082a666ae68cdc3a40040042642444444600400e646464a666ae68cdc3a400000426466644424666002008006004660baeb8d5d08011bad357420026eb4d5d09aba200135744002260b60b46aae78008d55ce8009baa357420022a666ae68cdc3a40080042642444444600a00e646464a666ae68cdc3a4000004224440042a666ae68cdc3a400400426424446006008660b8eb8d5d08008a999ab9a3370e9002001099910911198008028021982e3ae357420026eb8d5d09aba20011305b05a35573c0046aae74004dd51aba100115333573466e1d2006002132122222230030073232325333573466e1d200000213212230020033305c75c6ae8400454ccd5cd19b87480080084cc88488cc00401000ccc171d71aba1001375c6ae84d5d10008982d82d1aab9e00235573a0026ea8d5d08008a999ab9a3370e9004001089111110030a999ab9a3370e9005001099910911111198008040039bad357420026eb4d5d09aba20011305805735573c0046aae74004dd50019919192999ab9a3370e9000001099191999815182b9aba10033305a05b357420046eb8d5d080098279aba1357440026ae88004d5d10008a999ab9a3370e9001001098139919192999ab9a3370e90000010991919199998191bae35742008660bc0be6ae8400cc16cd5d08011bad357420026eb8d5d09aba2001357440026ae88004d5d10008982d02c9aab9e00235573a0026ea8d5d08008a999ab9a3370e9002001098151919192999ab9a3370e900000109919191919191919999999981a9bae35742010660c40c66ae8401cc17cd5d08031bad3574200a6eb4d5d08021bae35742006660b8eb8d5d0801198313ae357420026eb4d5d09aba2001357440026ae88004d5d10009aba2001357440026ae88004d5d10008982d02c9aab9e00235573a0026ea8d5d08008a999ab9a3370e900300108148982b82b1aab9e00235573a0026ea800c40804c15124103505435003307a221122533500210782215335003107a22133507b330760040023355300812001003001120012222212333330010060050040030023078225335001148000884cdc024004600800260ee44a66a0022900011099b8048008c010004cc1d8884894ccd5cd19b890024800041d054cd400441d0884cd41d4008cd4c01848004cdc0802240040022400246a002444444444444a66a601c01020e2266ae712401035530310007030742253350011065223213500322300300130782253350011300600322135002225333573466e1d200000113006003106c22235003223500422350052253355335333500a068006005153353302a004003133068002001106a106a106b13357389210248320006a330722212225335002153350011066221067221533500310672215335330070040021333530091200100700300110691200122232330752253350011300348000884d4008894ccd5cd19b8f002009130073370201c60180022600c0060084a666ae68cdc380099b8048008c01400841904cd5ce248103483134000633070225335001148000884cdc024004600800260de44a66a00220084426a0044466e00004c01800c88c8d400c894cd4c01cd40088888888888880104c98cd5ce24902483600057232215335001153353002300b30063500522222222222200c10651335738921024835000642213263357389210248370005c307422533500110642215335330640050021067130040013070225335001106c22135002223232330782253350011003221335075002300400100230070043302d00735001222200348000c1b0894cd400441a0884cd41a4008c010004c1ac894cd4004419c884cd41a0008c0100048dc91801000983491299a800881191099b8a37666a004444466e9520003357406a0084466e952000335740601600466ae80cc0308cd40048cdd2a400066ae80c034004dd880b91119ba548008cd5d01ba80033357406ea0008cd5d01ba800137620320026ec4054cd5d01998093a95011003335740a666a004266e95200037620264266e9520043357400026ec405084cdd2a400466ae80dd48009bb101433574066014ea4004dd88099802000919a800919ba548000cd5d01ba90013762018466e9520023357406ea4004dd880611299a8009099ba548000cd5d018018009bb100c13374a90011bb100b33066221225333573466e24009200010011533500110642213353006120013370200890010008900099111999980182a1180300099980182a1199ab9a3370e900000082c02b80b00100091191911911198018010009835111299a80109802800910a99a801898040021109a80211191a80291299a998088028010a99a9980680200089980600400308320a99a9808002099806004005099801a99a98080008838099a8378038380031839911299a80088321109a80111299a980a0008998038030018a99a9980a8048010a99a9980880400089980800619983d111299a80108009109980280099a83c001001803001883409980399a839802003001983411299a800882c9109a80111299a980400089803001882e183391299a800882c1109a80111299a980380089803001882da4903505438003063225335001105422135002225333573466e1d2000001130060031057237246030602a60b400244666ae68cdc79bb3333004752a0060046eccccc011d4a801800829028899800ba923750002446446e98c008004c184894cd40044dd90029109a8011119aba0337606010004600e002600c00693191299a9802180580090a9999a8009080089801a4c44442600e9310980224c2600493119319ab9c4910248330004232253353003300a001215333350012130044984c00d26222213007498840044c00926232633573892010248330004132233333301e00122532333573466e1d20000031533533335573e0044a09446096660aa6ae8400cd5d1001822109a80091299a980400110a99a9999aab9f0022504e2304f33059357420066ae8800c12084d4004894cd4cc08c090008854cd4cccd55cf80112829118299982e9aba100335744006098426a00244a66a605400442a66a6666aae7c008941588c8c8c164008d5d10021aba1003050215335302b001213058333301500b0070030011300e4984c035261300c4984c02526130084984c01526130044984c0052613001498c894ccd5cd19b874800801054cd4cccd55cf801928259191918270011aba20053574200808a42a66a66666604600244a666ae68cdc3a40000042a66a6666aae7c004941388c13ccc164d5d08011aba20020482135001225335302600221533533335573e0044a0a4460a6660ba6ae8400cd5d1001826109a80091299a9981381400110a99a9999aab9f002250562305733061357420066ae8800c14084d4004894cd4c050008854cd4cccd55cf8011282d1182d998329aba1003357440060a8426a00244a66a606600442a66a6666aae7c008941788c8c8c184008d5d10021aba100305821533530340012130603333302100f00b0070030011505e1505d1505c1505915058150551505415051150501504d1504d2504c2504c2504c2504c21304d3009001130034984c0092613002498c894ccd5cd19b874801001054cd4cccd55cf801928259191918270011aba20053574200808a42a66a66666604600244a666ae68cdc3a40000042a66a6666aae7c004941388c13ccc164d5d08011aba20020482135001225335302600221533533335573e0044a0a4460a6660ba6ae8400cd5d1001826109a80091299a9981381400110a99a9999aab9f002250562305733061357420066ae8800c14084d4004894cd4c050008854cd4cccd55cf8011282d1182d998329aba1003357440060a8426a00244a66a606600442a66a6666aae7c008941788c17ccc1a4d5d08019aba20030582135001225335303700221533533335573e0044a0c4460c6660da6ae8400cd5d100182e109a80091299a981d00110a99a9999aab9f002250662306733071357420066ae8800c18084d4004894cd4cccccc100008894ccd5cd19b87480080084c1ad41a854ccd5cd19b874800000854cd4cccd55cf800928359191918370011aba2003357420040ca42a66a60820024260da60da0022a0d62a0d42a0d44a0d24a0d24a0d24a0d242a66a6666aae7c008941a88c1accc1d4d5d08019aba200306421350012253353303f04200221533533335573e0044a0dc4646460e20046ae88010d5d080183410a99a982280090983819999999981800f80d80b8098078058038018008a8370a8368a8360a8348a8340a8328a8320a8308a8300a82e8a82e0a82c8a82c0a82a8a82a0a8288a8280a8268a82692826128261282612826109826980600089801a4c26004930980124c4a666ae68cdc3a400c006260940102a0924a08e4a08e4a08e4a08e466666603a00244a666ae68cdc3a40000042a66a6666aae7c004941208c8c8c12c008d5d10019aba1002042215335301f00121304a00115048150471504725046250462504625046212222300400512222003222212222333300200800700600521222230010052222222221233333333300100a009008007006005004003002222221233333001006005004003002322535001223353500222222222222200a130044988854cd4cc01cd40088888010d4c02401488d400488880104c0700084c0192623263357389210348313100039223500222350032232335005233500425333573466e3c0080045400c412881288cd4010812894ccd5cd19b8f00200115003104a153350032153350022133500223350022335002233500223304b002001204d2335002204d23304b00200122204d222335004204d2225333573466e1c01800c54ccd5cd19b8700500213300f004001104f104f10481533500121048104822333573466e1c00800410c10894cd4c008004840044c98cd5ce24810248380003623500122350022222222222223333500d2011201120112330602253350011504b22135002225350022235009223355333573466e3c0100084ccd5cd19b870030010590581058130540081300a00700d5038304e22533500113002300304a2215335001100222130063007005304d22533500110492215335001100322133504c330070040023006001304c222533500210012215335003100432221533353304f00500215003133504d0023300800700115003133504a00233005001003304b2253350011005221335002223714002600800244666ae68cdc3a4004600a660060046a00244440060760744644a66aa66a600400242606e0022a06a426609a44a66a002209244264a66a6a00644a666ae68cdc3a40040022607c0042a07a4266a09800200420026008002002208c609444a66a0022a06a4426a00444a666ae68cdc78010038981d00089803001a441003047225335001148000884cdc02400460080024a66a646466666601400444a666ae68cdc3a40000042a66a6666aae7c004940d48c0d8cc100d5d08011aba200202f2135001225335300b00221533533335573e0044a07246074660886ae8400cd5d1001819909a80091299a980500110a99a9999aab9f0022503d232323040002357440086ae8400c0dc854cd4c04c00484c0fcccc04001c00c004540f4540f0540ec540e0540dc540d0540d0940cc940cc940cc940ccc0108cccccc028004894ccd5cd19b874800000854cd4cccd55cf8009281a9181b198201aba10023574400405e426a00244a66a601800442a66a6666aae7c008940e48c8c8c0f0008d5d10021aba1003033215335300f00121303b123300100400215039150381503715034150342503325033250332503330090012135001222002104122212333001004003002232233333300800122503225031002250312503130452233335573e002460640844a66a60086ae84008854cd4c010d5d100190981a19a8218010008a819099281918019aba200202b25335300300121302f0011502d2333333004001225333573466e1d20000021533533335573e0024a05e46060660746ae84008d5d1001014909a80091299a999999804801112999ab9a3370e90000010a99a9999aab9f00125034232323037002357440066ae840080b8854cd4c02800484c0d8004540d0540cc540cc940c8940c8940c8940c8854cd4cccd55cf8011281991919181b0011aba20043574200605a42a66a601400242606a660940060022a0662a0642a0622a05c2a05c4a05a4a05a4a05a4a05a466666600600244a05a4a0584a0584a0584605a002466666600400244a0584a0564a056460580024a0564444446666666ae900188c8cc01cd55ce8009aab9e001375400e4600a6eac01c8c010dd6003918019bad00723002375c00e0524a6a0024444666a004264c66ae712410248390002721001213263357389210348313000028303d225335001103922133503a3500222330370023302a23370490008008009802000899319ab9c4901034833330002023263357389210348333700020200123232325333573466e1d2000002102b15333573466e1d2002002102c1301301235573c0046aae74004dd5000911919192999ab9a3370e9000001089110010a999ab9a3370e90010010990911180180218029aba100115333573466e1d2004002112220011301301235573c0046aae74004dd500091919192999ab9a3370e90000010990911118018029bae357420022a666ae68cdc3a400400426424444600200a600e6ae8400454ccd5cd19b87480100084c848888c008014c028d5d08008a999ab9a3370e900300109909111180200298029aba10011301101035573c0046aae74004dd500091919192999ab9a3370e900000109909111111180280418049aba100115333573466e1d20020021321222222230070083009357420022a666ae68cdc3a400800426644244444446600c01201060126ae84004dd71aba1357440022a666ae68cdc3a400c0042664424444444660040120106eb8d5d08009bae357426ae8800454ccd5cd19b87480200084cc8848888888cc004024020dd71aba1001375a6ae84d5d10008a999ab9a3370e90050010891111110020a999ab9a3370e9006001089111111001898080079aab9e00235573a0026ea80048c8c8c94ccd5cd19b87480000084cc8848cc00400c008c014d5d080098039aba1357440022601e01c6aae78008d55ce8009baa00123232325333573466e1d20000021330373005357420026eb4d5d09aba20011300e00d35573c0046aae74004dd500091919192999ab9a3370e900000109bae357420022601a0186aae78008d55ce8009baa00123232325333573466e1d200000213232333322221233330010050040030023232325333573466e1d2000002133221233001003002300b35742002660180146ae84d5d1000898088081aab9e00235573a0026ea8d5d0801999805bae500a35742004646464a666ae68cdc3a4000004224440062a666ae68cdc3a4004004264244460020086eb8d5d08008a999ab9a3370e9002001099091118010021aba10011301101035573c0046aae74004dd51aba10013300975c6ae84d5d10009aba200135744002260180166aae78008d55ce8009baa00123232325333573466e1d200000213212230020033005357420022a666ae68cdc3a400400426466644424466600200a0080066eb4d5d08011bad357420026eb4d5d09aba200135744002260160146aae78008d55ce8009baa00123232325333573466e1d20000021321223002003375c6ae8400454ccd5cd19b87480080084c8488c00400cdd71aba10011300a00935573c0046aae74004dd5000911919192999ab9a3370e90010010a80e8a999ab9a3370e90000010980f18029aba10011300a00935573c0046aae74004dd5000899800bae75a4464460046eac004c0bc88cccd55cf800901611919a8161981398031aab9d001300535573c00260086ae8800cd5d080100a91919192999ab9a3370e900000109bad357420022600c00a6aae78008d55ce8009baa00149010350543100232633573800201e464460046eb0004c0a888cccd55cf8009013919a81318021aba100230033574400402046eb8004c09c894cd4004520002213370090011802000981311299a8008a400044266e0120023004001132633573892103483434000093024225335001148000884cdc0240046008002604644a66a002203e44266a0044444660220260066008002604444a66a00220244426a00444a666ae68cdc7a4410b4879647261486561645631000021333573466e1d2002001017016130060033021225335001148000884cdc0240046008002264c66ae712410348323700004132633573892103483235000031326335738921034832340000223263357389210248310000212001301b225335001101722133500222223300900b00330040012322230033009333500b00a002001301b225335001101722133501835002223301500233008233350012330094800000488cc0280080048cc0240052000001300400123223002001301a2253350011016221335017350022233014002300700130040012233700004002424460040062244002602a44a66a002202244266a0246a004446601e004666a0024601800244666a0140120040024601a002600800244666ae68cdc780100080280209911119191980c91299a800880191099a80b0011802000980100218029980c11299a800880a11099299a9a80191911801005980f11299a80088079109a80111299a99808001003880909803001899a80b00180088009802000801180b91299a800880991099a80a1a8011119198090019800804180e91299a80089aa8088019109a80111299a998078010040891119801005002098030019802000980991299a800880791099a8081a801111980680118060009802000891001091000980811299a800880611099a8069a801111980500118048009802000980791299a800880591099a8061a80111198048011aa8038009802000909111801802089091118008021109198008018011a8019110009a8011110011a800911001999180080091091919980111801111180180211801111180100211801111180080211a998020020019a801800891111998021299a800899a803003803910a99a800899a804001804910a99199a998068028018a800899980400199a8058028060010a8008999803001119a805802800800911299a800899a80419a804001801180300499110a999a998068030010a801899980400119a8058030028008a801899a80419a804001801180300091129919a80109800a4c442a64666a6601c00e0062a00226008930a80089998038011180319a806003800800919a804980199a80480200518038010910010910911980080200199111a801111a801111a802911a801112999a998058030010a999ab9a3370e00a002201c2a666ae68cdc480280088060806899805803001099805803001112999ab9a3371e004002200a2a666ae68cdc8801000880188020911001891100109110009109198008018011191800800918011198010010009" } diff --git a/hydra-plutus/scripts/vInitial.plutus b/hydra-plutus/scripts/vInitial.plutus index 8eefd92b352..dd8e14a8ece 100644 --- a/hydra-plutus/scripts/vInitial.plutus +++ b/hydra-plutus/scripts/vInitial.plutus @@ -1,5 +1,5 @@ { - "type": "PlutusScriptV2", - "description": "hydra-vInitial-0.17.0-348-gd8c94a18c3", + "type": "PlutusScriptV3", + "description": "hydra-vInitial-0.17.0-60-gd6040f592", "cborHex": "590ed4590ed10100003323233223322323233223232323232323232323233223232323232323232323232323232323223323232323232323222225335333004375c006646464a666ae68cdc3a400000422440042a666ae68cdc3a40040042642446002006660100126ae840044c090034d55cf0011aab9d0013754004646464a666ae68cdc3a4000004266442466002006004646464a666ae68cdc3a40000042646464646464646464646666666666664444444444442466666666666600201a01801601401201000e00c00a0080060046602a4646464a666ae68cdc3a400000426644246600200600460346ae84004c06cd5d09aba20011303501e35573c0046aae74004dd50009aba100b357420146602a02e6ae84024ccc071d7280d9aba100833301c75ca0366ae8401cd5d08031aba1005357420086602aeb8d5d08019aba100233301c75c40026ae84004d5d09aba2001357440026ae88004d5d10009aba2001357440026ae88004d5d10009aba2001357440026ae880044c09c040d55cf0011aab9d00137546ae84004c8c8c94ccd5cd19b87480000084c848888c00c014dd71aba100115333573466e1d2002002132122223001005300c357420022a666ae68cdc3a400800426424444600400a601c6ae8400454ccd5cd19b87480180084c848888c010014c8c8c94ccd5cd19b87480000084c848888888c014020c044d5d08008a999ab9a3370e900100109909111111180380418089aba100115333573466e1d20040021332212222222330060090083011357420026eb8d5d09aba200115333573466e1d2006002133221222222233002009008375c6ae84004dd71aba1357440022a666ae68cdc3a40100042664424444444660020120106eb8d5d08009bad357426ae8800454ccd5cd19b874802800844888888801054ccd5cd19b874803000844888888800c4c0a804cd55cf0011aab9d00137546ae840044c09c040d55cf0011aab9d00137546ae84d5d1000898120069aab9e00235573a0026ea800440984c0852410350543500232230023758002605e446666aae7c00480c08cd40bcc010d5d080118019aba200202023232325333573466e1d20000021330273232325333573466e1d20000021375c6ae840044c08802cd55cf0011aab9d00137546ae84004dd69aba1357440022603e0106aae78008d55ce8009baa0013223232325333573466e1d200000213232333322221233330010050040030023232325333573466e1d2000002133221233001003002300c35742002660140166ae84d5d1000898120069aab9e00235573a0026ea8d5d08019998063ae500b35742004646464a666ae68cdc3a4000004224440062a666ae68cdc3a4004004264244460020086eb8d5d08008a999ab9a3370e9002001099091118010021aba10011302400d35573c0046aae74004dd51aba10013300775c6ae84d5d10009aba2001357440022603e0106aae78008d55ce8009baa001223232325333573466e1d20020021502815333573466e1d2000002130293005357420022603e0106aae78008d55ce8009baa00123232325333573466e1d200000213212230020033005357420022a666ae68cdc3a400400426466644424466600200a0080066eb4d5d08011bad357420026eb4d5d09aba2001357440022603a00c6aae78008d55ce8009baa00123232325333573466e1d20000021321223002003375c6ae8400454ccd5cd19b87480080084c8488c00400cdd71aba10011301c00535573c0046aae74004dd5000a49035054310013300175ceb488c88c008dd58009814911999aab9f001202a23233502a3302c300635573a002600a6aae78004c010d5d10019aba100201a3323232323222322253350021330084910349303100300330093500122002323232215332353300d4910349303300323230213301a00200133301801a5004332323223002001303922533500110032213335006220023013301200230040013500122001321233001002037301801a5002323017301f3301000b0015005153353300d49010349303400302333035500135500422002153353300d490103493133003302b35500422001009153353300d491034930320032323233039225335001103622153353005002103913004001002302d00230303550062222222222220045335330362253350011502f221350022253353303100200f130340011300600350032153350011302549103493036002213500222533500315333573466e1d20020011002130294910349303600221302b491034930360013024491034930350013300d490103493134003030300e50051031103110311330352253350011035221335036325355009222222222222335300d00c210011303449103493135003039225335001150322213500222533533033002008130370041300600330040010011030153353500322350022222222222223333500d2021202120212330422253350011503b221350022253353303c002007130400041300600300d21300a30090011031153353300b006500113020491034931320022135002225335003153335002130244910349303900215335333333015001225333573466e1d20000021533533335573e0024a06246064660726ae84008d5d1001014109a80091299aa99a980c80110981a8008a81990a99a9999aab9f00225035230363303d357420066ae8800c0b084d4004894cd4cccccc0780088940e4940e0070940e0940e0854cd4cccd55cf8011281c91919181e0011aba20043574200606042a66a603e002426076246660020100080042a0722a0702a06e2a0682a0662a0602a0604a05e4a05e4a05e4a05e426a002444660740040022604a9210349313100213025490103493130002213026491034931320013500122002302e225335001102b22135002225333573466e3c00801c4c03c0044c01800c8d4004880048d4004888800c894cd4004409c4cd5ce00101311a800911111111111004111981491299a800881491099299a9a80191111a8021119a8011281612999ab9a3371e00201c2605a6606800a00c2a0584266a058002004200260080026a002444444444444014002604a44a66a00220444426a00444a666ae68cdc7a450b4879647261486561645631000021333573466e1d20010010270261300600330242233335573e0024603e04a4a66a66666600a6ae84008894ccd5cd19b874800000854cd4cccd55cf8009281091811198149aba100235744004030426a00244a66a66666601400444a666ae68cdc3a40000042a66a6666aae7c004940988c09ccc0b8d5d08011aba200201d213500122533533333300f002225333573466e1d20000021533533335573e0024a05646464605c0046ae8800cd5d080101110a99a98088009098168008a8158a8150a8151281492814928149281490a99a9999aab9f0022502a23232302d002357440086ae8400c084854cd4cccccc0440048940b0940ac940ac8c0b0004940ac84c0b0cc0a800c004540a8540a4540a0540945409494090940909409094090854cd4cccd55cf801128129191918140011aba20043574200603842a66a601600242604e24660020080042a04a2a0482a0462a0402a0404a03e4a03e4a03e4a03e42a66a60086ae8800c84c084cd40980080045407c4c9407cc00cd5d100100a919999980100091280e9280e1280e1280e1180e8009111111999999aba40062323300735573a0026aae78004dd5003918029bab00723004375800e460066eb401c8c008dd700380ba80c181011299a8008810110999802803801180200091911180199802801000981011299a800881011099a8109a80111198128011981311299a800881311099a8139a8011119815801199a80091980724000002446601e00400246601c002900018020008009802000911802199a80280a8010009119b80002001301c225335001101c22133501d3500222330210023335001230090012233350090190020012300a00130040011322223232330212253350011003221335022002300400130020043005330202253350011020221325335350032322300200b302622533500110242213500222533533010002007102713006003133502200300110013004001002301f225335001101f22133502035002223233025003300100830252253350011355012003221350022253353300f002008112223300200a004130060033004001301b225335001101b22133501c350022233020002300d0013004001301a225335001101a22133501b35002223301f002300c00130040013019225335001101922133501a35002223301e00235500a00130040013018225335001101822133501935002220013004001301722533500110152232135003223003001301b2253350011300600322135002322253335001230043300d4800000488c014cc0380080048c010cc0340052000233500113005002101b22333573466e2000800404c05084888c00c0104484888c004010c04c88d4004894cd400854cd4004404c884c01d241034930370022153350031300749103493038002213500422350042253353301437666a006444466e9520003357406a0084466e952000335740602a00466ae80cc0588cd40048cdd2a400066ae80c05c004dd880d11119ba548008cd5d01ba80033357406ea0008cd5d01ba800137620380026ec4060cd5d019980aba93301575246ea000400ccd5d02999a801099ba548000dd880b1099ba548010cd5d00009bb1017213374a900119aba037520026ec405ccd5d01980a3a9001376202c0022a66a66026008004260186603c00e00a20342034464c66ae70004008480048cd40048cdd2a400066ae80dd48009bb100523374a900119aba037520026ec4014894cd400484cdd2a400066ae80c00c004dd8802899ba548008dd8802111911ba6300200130102253350011376400a4426a0044466ae80cdd8180400118038009803001a4c446a004446a00644a666ae68cdc78020010999ab9a3370e00600201c01a201a44666ae68cdc7801000804804110919800801801109118010018891000980391299a800880391099a8040011802000980311299a8008802111909a801911801800980511299a800898030019109a801112999ab9a3370e900000089803001880589100109100089100109109119800802001910919800801801119180080091801119801001000a451c2043a9f1a685bcf491413a5f139ee42e335157c8c6bc8d9e4018669d0001" } diff --git a/hydra-plutus/src/Hydra/Contract/HeadTokens.hs b/hydra-plutus/src/Hydra/Contract/HeadTokens.hs index 30113a3c2d7..673101181ae 100644 --- a/hydra-plutus/src/Hydra/Contract/HeadTokens.hs +++ b/hydra-plutus/src/Hydra/Contract/HeadTokens.hs @@ -14,7 +14,7 @@ module Hydra.Contract.HeadTokens where import PlutusTx.Prelude import Hydra.Cardano.Api ( - PlutusScriptV2, + PlutusScriptV3, PolicyId, TxIn, fromPlutusScript, @@ -200,4 +200,4 @@ headPolicyId = -- | Get the applied head minting policy script given a seed 'TxIn'. mkHeadTokenScript :: TxIn -> Api.PlutusScript mkHeadTokenScript = - fromPlutusScript @PlutusScriptV2 . mintingPolicyScript . toPlutusTxOutRef + fromPlutusScript @PlutusScriptV3 . mintingPolicyScript . toPlutusTxOutRef diff --git a/hydra-plutus/test/Hydra/Plutus/GoldenSpec.hs b/hydra-plutus/test/Hydra/Plutus/GoldenSpec.hs index 2cf69d30eee..e0b7c6cb3b5 100644 --- a/hydra-plutus/test/Hydra/Plutus/GoldenSpec.hs +++ b/hydra-plutus/test/Hydra/Plutus/GoldenSpec.hs @@ -14,7 +14,7 @@ import Hydra.Prelude import Test.Hydra.Prelude import Hydra.Cardano.Api ( - AsType (AsPlutusScriptV2, AsScript), + AsType (AsPlutusScriptV3, AsScript), File (..), Script, fromPlutusScript, @@ -64,4 +64,4 @@ goldenScript name plutusScript = readFromFile fp = either (die . show) pure - =<< readFileTextEnvelope (AsScript AsPlutusScriptV2) (File fp) + =<< readFileTextEnvelope (AsScript AsPlutusScriptV3) (File fp) diff --git a/hydra-test-utils/src/Test/Plutus/Validator.hs b/hydra-test-utils/src/Test/Plutus/Validator.hs index 4e5db460433..74a663e6673 100644 --- a/hydra-test-utils/src/Test/Plutus/Validator.hs +++ b/hydra-test-utils/src/Test/Plutus/Validator.hs @@ -20,7 +20,7 @@ import Cardano.Api.UTxO qualified as UTxO import Cardano.Ledger.Alonzo.Core qualified as Ledger import Cardano.Ledger.Alonzo.Scripts (CostModel, mkCostModel, mkCostModels) import Cardano.Ledger.BaseTypes (ProtVer (..), natVersion) -import Cardano.Ledger.Plutus.Language (Language (PlutusV2)) +import Cardano.Ledger.Plutus.Language (Language (PlutusV3)) import Cardano.Slotting.EpochInfo (fixedEpochInfo) import Cardano.Slotting.Slot (EpochSize (EpochSize)) import Cardano.Slotting.Time (mkSlotLength) @@ -111,7 +111,7 @@ evaluateScriptExecutionUnits validatorScript redeemer = pparams :: Ledger.PParams LedgerEra pparams = def - & Ledger.ppCostModelsL .~ mkCostModels (Map.fromList [(PlutusV2, plutusV2CostModel)]) + & Ledger.ppCostModelsL .~ mkCostModels (Map.fromList [(PlutusV3, plutusV3CostModel)]) & Ledger.ppMaxTxExUnitsL .~ toLedgerExUnits defaultMaxExecutionUnits & Ledger.ppProtocolVersionL .~ ProtVer{pvMajor = natVersion @8, pvMinor = 0} @@ -169,185 +169,261 @@ defaultDatum = () -- ** Plutus cost model fixtures --- | Current (2023-08-04) mainnet PlutusV2 cost model. -plutusV2CostModel :: CostModel -plutusV2CostModel = +-- | Current (2024-07-20) sanchonet PlutusV3 cost model. +plutusV3CostModel :: CostModel +plutusV3CostModel = either (error . show) id $ mkCostModel - PlutusV2 - [ 205665 - , 812 + PlutusV3 + [ 100788 + , 420 , 1 , 1 , 1000 - , 571 + , 173 , 0 , 1 , 1000 - , 24177 + , 59957 , 4 , 1 - , 1000 + , 11183 , 32 - , 117366 - , 10475 + , 201305 + , 8356 , 4 - , 23000 + , 16000 , 100 - , 23000 + , 16000 , 100 - , 23000 + , 16000 , 100 - , 23000 + , 16000 , 100 - , 23000 + , 16000 , 100 - , 23000 + , 16000 , 100 , 100 , 100 - , 23000 + , 16000 , 100 - , 19537 + , 94375 , 32 - , 175354 + , 132994 , 32 - , 46417 + , 61462 , 4 - , 221973 - , 511 + , 72010 + , 178 , 0 , 1 - , 89141 + , 22151 , 32 - , 497525 - , 14068 + , 91189 + , 769 , 4 , 2 - , 196500 - , 453240 - , 220 + , 85848 + , 123203 + , 7305 + , -900 + , 1716 + , 549 + , 57 + , 85848 , 0 , 1 , 1 , 1000 - , 28662 + , 42921 , 4 , 2 - , 245000 - , 216773 - , 62 + , 24548 + , 29498 + , 38 , 1 - , 1060367 - , 12586 + , 898148 + , 27279 , 1 - , 208512 - , 421 + , 51775 + , 558 , 1 - , 187000 + , 39184 , 1000 - , 52998 + , 60594 , 1 - , 80436 + , 141895 , 32 - , 43249 + , 83150 , 32 - , 1000 + , 15299 , 32 - , 80556 + , 76049 , 1 - , 57667 + , 13169 , 4 - , 1000 + , 22100 , 10 - , 197145 - , 156 + , 28999 + , 74 , 1 - , 197145 - , 156 + , 28999 + , 74 , 1 - , 204924 - , 473 + , 43285 + , 552 , 1 - , 208896 - , 511 + , 44749 + , 541 , 1 - , 52467 + , 33852 , 32 - , 64832 + , 68246 , 32 - , 65493 + , 72362 , 32 - , 22558 + , 7243 , 32 - , 16563 + , 7391 , 32 - , 76511 + , 11546 , 32 - , 196500 - , 453240 - , 220 + , 85848 + , 123203 + , 7305 + , -900 + , 1716 + , 549 + , 57 + , 85848 , 0 , 1 - , 1 - , 69522 - , 11687 + , 90434 + , 519 , 0 , 1 - , 60091 + , 74433 , 32 - , 196500 - , 453240 - , 220 + , 85848 + , 123203 + , 7305 + , -900 + , 1716 + , 549 + , 57 + , 85848 , 0 , 1 , 1 - , 196500 - , 453240 - , 220 + , 85848 + , 123203 + , 7305 + , -900 + , 1716 + , 549 + , 57 + , 85848 , 0 , 1 - , 1 - , 1159724 - , 392670 + , 955506 + , 213312 , 0 , 2 - , 806990 - , 30482 + , 270652 + , 22588 , 4 - , 1927926 - , 82523 + , 1457325 + , 64566 , 4 - , 265318 - , 0 + , 20467 + , 1 , 4 , 0 - , 85931 + , 141992 , 32 - , 205665 - , 812 + , 100788 + , 420 , 1 , 1 - , 41182 + , 81663 , 32 - , 212342 + , 59498 , 32 - , 31220 + , 20142 , 32 - , 32696 + , 24588 , 32 - , 43357 + , 20744 , 32 - , 32247 + , 25933 , 32 - , 38314 + , 24623 , 32 - , 35892428 + , 43053543 , 10 - , 57996947 - , 18975 + , 53384111 + , 14333 , 10 - , 38887044 - , 32947 + , 43574283 + , 26308 , 10 + , 16000 + , 100 + , 16000 + , 100 + , 962335 + , 18 + , 2780678 + , 6 + , 442008 + , 1 + , 52538055 + , 3756 + , 18 + , 267929 + , 18 + , 76433006 + , 8868 + , 18 + , 52948122 + , 18 + , 1995836 + , 36 + , 3227919 + , 12 + , 901022 + , 1 + , 166917843 + , 4307 + , 36 + , 284546 + , 36 + , 158221314 + , 26549 + , 36 + , 74698472 + , 36 + , 333849714 + , 1 + , 254006273 + , 72 + , 2174038 + , 72 + , 2261318 + , 64571 + , 4 + , 207616 + , 8310 + , 4 + , 1293828 + , 28716 + , 63 + , 0 + , 1 + , 1006041 + , 43623 + , 251 + , 0 + , 1 ]